diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..954a253b --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,39 @@ +{ + "name": "RELEASE", + "on": { + "push": { + "branches": [ + "master" + ] + } + }, + "jobs": { + "autotag": { + "permissions": { + "contents": "write" + }, + "runs-on": "ubuntu-latest", + "env": { + "OS": "ubuntu-latest" + }, + "steps": [ + { + "name": "Checkout Code", + "uses": "actions/checkout@v3" + }, + { + "name": "Create release tag", + "uses": "butlerlogic/action-autotag@8bc1ad456dcdee34e8c6ffbce991cc31793578c2", + "with": { + "root": "ChangeLog.md", + "regex_pattern": "^## (?\\d+\\.\\d+\\.\\d+.*?)( |\\n).*$", + "tag_prefix": "v" + }, + "env": { + "GITHUB_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + } + } + ] + } + } +} \ No newline at end of file diff --git a/src/ci.lisp b/src/ci.lisp index 7431c494..a6e266e3 100644 --- a/src/ci.lisp +++ b/src/ci.lisp @@ -4,10 +4,16 @@ #:defworkflow) (:import-from #:40ants-ci/jobs/linter) (:import-from #:40ants-ci/jobs/run-tests) - (:import-from #:40ants-ci/jobs/docs)) + (:import-from #:40ants-ci/jobs/docs) + (:import-from #:40ants-ci/jobs/autotag + #:autotag)) (in-package #:reblocks/ci) +(defworkflow release + :on-push-to "master" + :jobs ((autotag))) + (defworkflow linter :on-pull-request t :cache t