Only release on tags
This commit is contained in:
6
.github/workflows/release.yml
vendored
6
.github/workflows/release.yml
vendored
@@ -2,8 +2,8 @@ name: Release
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
tags:
|
||||||
- main
|
- 'v[0-9]+.[0-9]+.[0-9]+'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
releases-matrix:
|
releases-matrix:
|
||||||
@@ -26,6 +26,6 @@ jobs:
|
|||||||
goarch: ${{ matrix.goarch }}
|
goarch: ${{ matrix.goarch }}
|
||||||
goversion: 1.19.1
|
goversion: 1.19.1
|
||||||
binary_name: "pod-atomisthq-tools.docker"
|
binary_name: "pod-atomisthq-tools.docker"
|
||||||
release_tag: v0.${{ github.run_number }}.${{ github.run_attempt }}
|
release_tag: ${{github.ref_name}}
|
||||||
overwrite: TRUE
|
overwrite: TRUE
|
||||||
compress_assets: OFF
|
compress_assets: OFF
|
||||||
|
|||||||
16
README.md
16
README.md
@@ -1,6 +1,6 @@
|
|||||||
## Background
|
## Background
|
||||||
|
|
||||||
This is a [babashka pod](https://github.com/babashka/pods) that binds some golang functions into a clojure namespace. Using this pod, clojure programs can parse dockerfiles and docker images names using the "official" docker golang libraries.
|
This is a [babashka pod](https://github.com/babashka/pods) that binds some golang functions into a clojure namespace. Using this pod, clojure programs can parse dockerfiles and docker images names using the "official" docker golang libraries.
|
||||||
|
|
||||||
* [`github.com/docker/distribution/reference`](https://github.com/distribution/distribution/blob/main/reference/reference.go) (for image name parsing)
|
* [`github.com/docker/distribution/reference`](https://github.com/distribution/distribution/blob/main/reference/reference.go) (for image name parsing)
|
||||||
* [`github.com/moby/buildkit/frontend/dockerfile/parser`](https://github.com/moby/buildkit/blob/master/frontend/dockerfile/parser/parser.go) (for generating a Dockerfile AST).
|
* [`github.com/moby/buildkit/frontend/dockerfile/parser`](https://github.com/moby/buildkit/blob/master/frontend/dockerfile/parser/parser.go) (for generating a Dockerfile AST).
|
||||||
@@ -16,13 +16,13 @@ This is a [babashka pod](https://github.com/babashka/pods) that binds some golan
|
|||||||
;; load-pod will create this namespace with two vars
|
;; load-pod will create this namespace with two vars
|
||||||
(require '[pod.atomisthq.docker :as docker])
|
(require '[pod.atomisthq.docker :as docker])
|
||||||
|
|
||||||
;; parse image names using github.com/docker/distribution
|
;; parse image names using github.com/docker/distribution
|
||||||
;; turns golang structs into clojure maps
|
;; turns golang structs into clojure maps
|
||||||
(docker/parse-image-name "gcr.io/whatever:tag")
|
(docker/parse-image-name "gcr.io/whatever:tag")
|
||||||
;; automatically turns golang errors into Exceptions
|
;; automatically turns golang errors into Exceptions
|
||||||
(try
|
(try
|
||||||
(docker/parse-image-name "gcr.io/whatever/:tag")
|
(docker/parse-image-name "gcr.io/whatever/:tag")
|
||||||
(catch Exception e
|
(catch Exception e
|
||||||
;; invalid reference format
|
;; invalid reference format
|
||||||
(println (.getMessage e))))
|
(println (.getMessage e))))
|
||||||
|
|
||||||
@@ -47,6 +47,10 @@ Create `vonwig/pod-atomisthq-tools.docker` which is a manifest list with pod bin
|
|||||||
bb build-pod-image
|
bb build-pod-image
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Releasing
|
||||||
|
|
||||||
|
Pushing a tag (like v0.1.1) will cause a GitHub release to be created
|
||||||
|
|
||||||
## Namespace generation
|
## Namespace generation
|
||||||
|
|
||||||
The `pods/load-pod` call is convenient for a repl-session, or a script, but what if you are `aot` compiling, or building a native binary. In the example above, the namespaces emitted by `pods/load-pod` are not available until runtime.
|
The `pods/load-pod` call is convenient for a repl-session, or a script, but what if you are `aot` compiling, or building a native binary. In the example above, the namespaces emitted by `pods/load-pod` are not available until runtime.
|
||||||
@@ -83,8 +87,8 @@ Here is an example of bindings that will resolve at compile-time and go through
|
|||||||
|
|
||||||
;; async example
|
;; async example
|
||||||
(defn generate-sbom [s]
|
(defn generate-sbom [s]
|
||||||
(impl/invoke-public "pod.atomisthq.docker" "pod.atomisthq.docker/-generate-sbom"
|
(impl/invoke-public "pod.atomisthq.docker" "pod.atomisthq.docker/-generate-sbom"
|
||||||
[s cb]
|
[s cb]
|
||||||
{:handlers {:done (fn [])
|
{:handlers {:done (fn [])
|
||||||
:success cb
|
:success cb
|
||||||
:error (fn [err]}})))
|
:error (fn [err]}})))
|
||||||
|
|||||||
Reference in New Issue
Block a user