diff --git a/.github/workflows/README.md b/.github/workflows/README.md deleted file mode 100644 index 79503ef..0000000 --- a/.github/workflows/README.md +++ /dev/null @@ -1,53 +0,0 @@ -# Datajoint Github Actions Workflow - -## Github Actions Workflow Triggers -- before release -``` -name: -on: - pull_request: - push: - branches: - - '**' - tags-ignore: - - '**' - workflow_dispatch: -``` - -- depending on a prior workflow run, most of the time for security purpose -``` -name: -on: - workflow_run: - workflows: [""] - types: - - completed -``` - -- tag to release -``` -name: -on: - push: - tags: - - '*.*.*' - - 'test*.*.*' -``` - -## Reusable Workflow Callers -- mkdocs -``` -jobs: - call_mkdocs_release: - uses: datajoint/.github/.github/workflows/mkdocs_release.yaml@main - permissions: - contents: write # give github actions permission to push gh-pages branch -``` - -- context check(optional: mostly for debugging github actions workflows) -``` -jobs: - call_context_check: - uses: datajoint/.github/.github/workflows/context_check.yaml@main -``` - diff --git a/.github/workflows/devcontainer-build-publish.yaml b/.github/workflows/devcontainer-build-publish.yaml new file mode 100644 index 0000000..7afc76b --- /dev/null +++ b/.github/workflows/devcontainer-build-publish.yaml @@ -0,0 +1,33 @@ +name: Build and Publish DevContainer Image +on: + workflow_call: + secrets: + DOCKERHUB_USERNAME: + required: true + DOCKERHUB_TOKEN: + required: true +jobs: + devcontainer-build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Install dependencies + run: | + sudo curl https://github.com/mikefarah/yq/releases/download/v4.34.1/yq_linux_amd64\ + -Lo /usr/local/bin/yq + sudo chmod +x /usr/local/bin/yq + yq --version + - name: Determine metadata + run: | + PIP_PACKAGE_NAME=$(ls */version.py | cut -d '/' -f 1) + echo "PIP_PACKAGE_NAME=${PIP_PACKAGE_NAME}" >> $GITHUB_ENV + - name: Login to Docker Hub + uses: docker/login-action@v2 + with: + username: ${{secrets.DOCKERHUB_USERNAME}} + password: ${{secrets.DOCKERHUB_TOKEN}} + - name: Build image + run: | + IMAGE=$(yq eval '.services.app.image' ./.devcontainer/docker-compose.yaml) + docker build -t "${IMAGE}" -f ./.devcontainer/Dockerfile . + docker push "${IMAGE}" diff --git a/.github/workflows/devcontainer-build.yaml b/.github/workflows/devcontainer-build.yaml index 020cf1a..0d0e7f7 100644 --- a/.github/workflows/devcontainer-build.yaml +++ b/.github/workflows/devcontainer-build.yaml @@ -1,10 +1,13 @@ -name: Build DevContainer Image +name: Deprecated:Build DevContainer Image on: workflow_call: jobs: devcontainer-build: runs-on: ubuntu-latest steps: + - name: Deprecation Warning + run: | + echo "This action is deprecated. Please use the 'Build and Publish DevContainer Image' reusable workflow instead." - uses: actions/checkout@v3 - name: Install dependencies run: | diff --git a/.github/workflows/devcontainer-publish.yaml b/.github/workflows/devcontainer-publish.yaml index 07a38f7..b428960 100644 --- a/.github/workflows/devcontainer-publish.yaml +++ b/.github/workflows/devcontainer-publish.yaml @@ -1,4 +1,4 @@ -name: Publish DevContainer Image +name: Deprecated:Publish DevContainer Image on: workflow_call: secrets: @@ -10,6 +10,9 @@ jobs: devcontainer-publish: runs-on: ubuntu-latest steps: + - name: Deprecation Warning + run: | + echo "This action is deprecated. Please use the 'Build and Publish DevContainer Image' reusable workflow instead." - uses: actions/checkout@v3 - name: Install dependencies run: | diff --git a/.github/workflows/make_github_release.yaml b/.github/workflows/make_github_release.yaml index 1811660..252cad5 100644 --- a/.github/workflows/make_github_release.yaml +++ b/.github/workflows/make_github_release.yaml @@ -1,4 +1,4 @@ -name: make_github_release +name: Deprecated:make_github_release on: workflow_call: outputs: @@ -11,6 +11,9 @@ jobs: outputs: gh_release_upload_url: ${{ steps.get_release_upload_url.outputs.upload_url }} steps: + - name: Deprecation Warning + run: | + echo "This action is deprecated. Please use the 'Semantic Release' reusable workflow instead." - uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 diff --git a/.github/workflows/semantic-release.yaml b/.github/workflows/semantic-release.yaml new file mode 100644 index 0000000..cc0f1e1 --- /dev/null +++ b/.github/workflows/semantic-release.yaml @@ -0,0 +1,94 @@ +name: semantic-release +on: + workflow_call: + +jobs: + release: + runs-on: ubuntu-latest + concurrency: release + permissions: + id-token: write + contents: write + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + # fixed: https://github.com/python-semantic-release/python-semantic-release/issues/721 + - name: Find version.py + id: find_version_dot_py + run: | + echo "version_dot_py_path=$(find * -name "version.py" | head -n 1)" >> $GITHUB_OUTPUT + - name: Config python-semantic-release + env: + VERSION_DOT_PY_PATH: ${{ steps.find_version_dot_py.outputs.version_dot_py_path }} + run: | + cat < .semantic-release.toml + [tool.semantic_release] + assets = [] + build_command_env = [] + commit_message = "{version}\n\nAutomatically generated by python-semantic-release" + commit_parser = "angular" + logging_use_named_masks = true # + major_on_zero = true + allow_zero_version = true + no_git_verify = false + tag_format = "{version}" # + version_variables = [ + "${VERSION_DOT_PY_PATH}:__version__" # + ] + + [tool.semantic_release.branches.main] + match = "(main|master)" + prerelease_token = "rc" + prerelease = false + + [tool.semantic_release.changelog] + template_dir = "templates" + changelog_file = "CHANGELOG.md" + exclude_commit_patterns = [] + + [tool.semantic_release.changelog.environment] + block_start_string = "{%" + block_end_string = "%}" + variable_start_string = "{{" + variable_end_string = "}}" + comment_start_string = "{#" + comment_end_string = "#}" + trim_blocks = false + lstrip_blocks = false + newline_sequence = "\n" + keep_trailing_newline = false + extensions = [] + autoescape = true + + [tool.semantic_release.commit_author] + env = "GIT_COMMIT_AUTHOR" + default = "semantic-release " + + [tool.semantic_release.commit_parser_options] + allowed_tags = ["build", "chore", "ci", "docs", "feat", "fix", "perf", "style", "refactor", "test"] + minor_tags = ["feat"] + patch_tags = ["fix", "perf"] + default_bump_level = 0 + + [tool.semantic_release.remote] + name = "origin" + type = "github" + ignore_token_for_push = false + insecure = false + + [tool.semantic_release.publish] + dist_glob_patterns = ["dist/*"] + upload_to_vcs_release = true + EOF + + echo "INFO::Semantic release configuration:" + cat .semantic-release.toml + + git config --global --add safe.directory ${PWD} + - name: Python Semantic Release + uses: python-semantic-release/python-semantic-release@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + root_options: "-c .semantic-release.toml -v" \ No newline at end of file diff --git a/.staging_workflows/anchored_u24_element_before_release.yaml b/.staging_workflows/anchored_u24_element_before_release.yaml deleted file mode 100644 index d1d6e43..0000000 --- a/.staging_workflows/anchored_u24_element_before_release.yaml +++ /dev/null @@ -1,28 +0,0 @@ -name: u24_element_before_release - -on: - pull_request: - push: - branches: - - '**' - tags-ignore: - - '**' - workflow_dispatch: - -anchor-dev-build-call: &dev-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - -anchor-test-build-call: &test-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - -anchor-prod-build-call: &prod-build-call - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_elements_build_alpine: - !!merge <<: *$STAGE-build-call - with: - py_ver: 3.9 - image: djbase \ No newline at end of file diff --git a/.staging_workflows/anchored_u24_element_release_call.yaml b/.staging_workflows/anchored_u24_element_release_call.yaml deleted file mode 100644 index 77503ab..0000000 --- a/.staging_workflows/anchored_u24_element_release_call.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: u24_element_release_call - -on: - workflow_run: - workflows: ["u24_element_tag_to_release"] - types: - - completed - -anchor-dev-release-call: &dev-release-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_element_release.yaml@main - -anchor-test-release-call: &test-release-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_element_release.yaml@main - -anchor-prod-release-call: &prod-release-call - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_release.yaml@main - -anchor-dev-release-if: &dev-release-if - if: >- - github.event.workflow_run.conclusion == 'success' && - github.repository_owner == 'yambottle' && - !contains(github.event.workflow_run.head_branch, 'test') - -anchor-test-release-if: &test-release-if - if: >- - github.event.workflow_run.conclusion == 'success' && - github.repository_owner == 'yambottle' && - !contains(github.event.workflow_run.head_branch, 'test') - -anchor-prod-release-if: &prod-release-if - if: >- - github.event.workflow_run.conclusion == 'success' && - github.repository_owner == 'datajoint' && - !contains(github.event.workflow_run.head_branch, 'test') - -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - test_call_u24_elements_release_alpine: - if: >- - github.event.workflow_run.conclusion == 'success' && - ( contains(github.event.workflow_run.head_branch, 'test') || - (github.event.workflow_run.event == 'pull_request')) - !!merge <<: *$STAGE-release-call - with: - py_ver: 3.9 - twine_repo: testpypi - secrets: - TWINE_USERNAME: ${{secrets.TWINE_TEST_USERNAME}} - TWINE_PASSWORD: ${{secrets.TWINE_TEST_PASSWORD}} - - call_u24_elements_release_alpine: - !!merge <<: *$STAGE-release-if - !!merge <<: *$STAGE-release-call - with: - py_ver: 3.9 - secrets: - TWINE_USERNAME: ${{secrets.TWINE_USERNAME}} - TWINE_PASSWORD: ${{secrets.TWINE_PASSWORD}} diff --git a/.staging_workflows/anchored_u24_element_tag_to_release.yaml b/.staging_workflows/anchored_u24_element_tag_to_release.yaml deleted file mode 100644 index cc6be67..0000000 --- a/.staging_workflows/anchored_u24_element_tag_to_release.yaml +++ /dev/null @@ -1,25 +0,0 @@ -name: u24_element_tag_to_release - -on: - push: - tags: - - '*.*.*' - - 'test*.*.*' - -anchor-dev-build-call: &dev-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - -anchor-test-build-call: &test-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - -anchor-prod-build-call: &prod-build-call - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_elements_build_alpine: - !!merge <<: *$STAGE-build-call - with: - py_ver: 3.9 - image: djbase \ No newline at end of file diff --git a/.staging_workflows/anchored_u24_workflow_before_release.yaml b/.staging_workflows/anchored_u24_workflow_before_release.yaml deleted file mode 100644 index 5076e8e..0000000 --- a/.staging_workflows/anchored_u24_workflow_before_release.yaml +++ /dev/null @@ -1,29 +0,0 @@ -name: u24_workflow_before_release -on: - pull_request: - push: - branches: - - '**' - tags-ignore: - - '**' - workflow_dispatch: - -anchor-dev-build-call: &dev-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - -anchor-test-build-call: &test-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - -anchor-prod-build-call: &prod-build-call - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - - call_u24_workflow_build_debian: - !!merge <<: *$STAGE-build-call - with: - jhub_ver: 1.4.2 - py_ver: 3.9 - dist: debian \ No newline at end of file diff --git a/.staging_workflows/anchored_u24_workflow_release_call.yaml b/.staging_workflows/anchored_u24_workflow_release_call.yaml deleted file mode 100644 index 9f26658..0000000 --- a/.staging_workflows/anchored_u24_workflow_release_call.yaml +++ /dev/null @@ -1,46 +0,0 @@ -name: u24_workflow_release_call - -on: - workflow_run: - workflows: ["u24_workflow_tag_to_release"] - types: - - completed - -anchor-dev-release-call: &dev-release-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_workflow_release.yaml@main - -anchor-test-release-call: &test-release-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_workflow_release.yaml@main - -anchor-prod-release-call: &prod-release-call - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_workflow_release.yaml@main - -anchor-dev-release-if: &dev-release-if - if: >- - github.event.workflow_run.conclusion == 'success' && - github.repository_owner == 'yambottle' - -anchor-test-release-if: &test-release-if - if: >- - github.event.workflow_run.conclusion == 'success' && - github.repository_owner == 'yambottle' - -anchor-prod-release-if: &prod-release-if - if: >- - github.event.workflow_run.conclusion == 'success' && - github.repository_owner == 'datajoint' - -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - - call_u24_workflow_release_debian: - !!merge <<: *$STAGE-release-if - !!merge <<: *$STAGE-release-call - with: - jhub_ver: 1.4.2 - py_ver: 3.9 - dist: debian - secrets: - REGISTRY_USERNAME: ${{secrets.DOCKER_USERNAME}} - REGISTRY_PASSWORD: ${{secrets.DOCKER_PASSWORD}} \ No newline at end of file diff --git a/.staging_workflows/anchored_u24_workflow_tag_to_release.yaml b/.staging_workflows/anchored_u24_workflow_tag_to_release.yaml deleted file mode 100644 index eae8710..0000000 --- a/.staging_workflows/anchored_u24_workflow_tag_to_release.yaml +++ /dev/null @@ -1,26 +0,0 @@ -name: u24_workflow_tag_to_release - -on: - push: - tags: - - '*.*.*' - - 'test*.*.*' - -anchor-dev-build-call: &dev-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - -anchor-test-build-call: &test-build-call - uses: yambottle/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - -anchor-prod-build-call: &prod-build-call - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_workflow_build_debian: - !!merge <<: *$STAGE-build-call - with: - jhub_ver: 1.4.2 - py_ver: 3.9 - dist: debian \ No newline at end of file diff --git a/.staging_workflows/normalize.sh b/.staging_workflows/normalize.sh deleted file mode 100755 index 49b4d42..0000000 --- a/.staging_workflows/normalize.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# For Github Action that doesn't support anchor yet... -# https://github.com/actions/runner/issues/1182 -# yq is not the version from pypi with the same name. - -export STAGE=${1:-prod} -# .yaml in .staging_workflows has to be named using a prefix, e.g., 'anchored_', this will be removed when normalizing -PREFIX=${2:-anchored_} -SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd) - -run_yq() { - local src_file - local filename - local target - for src_file in "${SCRIPT_DIR}"/*.y*ml; do - [[ ! -f ${src_file} ]] && continue - filename=$(basename "$src_file") - target="${SCRIPT_DIR}"/../workflow-templates/${filename#"$PREFIX"} - envsubst '${STAGE}' <"$src_file" | yq e 'explode(.) | del(.anchor-*)' >"$target" - done -} - -run_yq diff --git a/.vscode/settings.json b/.vscode/settings.json index 2d1707a..7755c31 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,8 +1,6 @@ { "conventionalCommits.scopes": [ - "U24 Element", - "U24 Workflow", "reusable-workflows", - "codebook_docker_template" + "starter-workflows" ] } \ No newline at end of file diff --git a/make-dev.sh b/make-dev.sh deleted file mode 100644 index e9bdb38..0000000 --- a/make-dev.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -bash ./.staging_workflows/normalize.sh dev \ No newline at end of file diff --git a/make-prod.sh b/make-prod.sh deleted file mode 100644 index 806e39e..0000000 --- a/make-prod.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -bash ./.staging_workflows/normalize.sh prod \ No newline at end of file diff --git a/make-test.sh b/make-test.sh deleted file mode 100644 index 3870e77..0000000 --- a/make-test.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -bash ./.staging_workflows/normalize.sh test \ No newline at end of file diff --git a/run-act.sh b/run-act.sh deleted file mode 100644 index 4ae9cdf..0000000 --- a/run-act.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) -bash $SCRIPT_DIR/.staging_workflows/normalize.sh dev -cd .. -act -P ubuntu-latest=drewyangdev/ubuntu:act-latest \ - --secret-file $SCRIPT_DIR/.test/.secrets \ - --artifact-server-path $SCRIPT_DIR/.test/artifacts/ \ No newline at end of file diff --git a/workflow-templates/README.md b/workflow-templates/README.md deleted file mode 100644 index 32b541f..0000000 --- a/workflow-templates/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# Datajoint Starter CICD - -## U24 -![U24_CICD_flow_chart](./U24CICD_V2.drawio.png) \ No newline at end of file diff --git a/workflow-templates/U24CICD_V2.drawio b/workflow-templates/U24CICD_V2.drawio deleted file mode 100644 index aea6672..0000000 --- a/workflow-templates/U24CICD_V2.drawio +++ /dev/null @@ -1 +0,0 @@ -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 \ No newline at end of file diff --git a/workflow-templates/U24CICD_V2.drawio.png b/workflow-templates/U24CICD_V2.drawio.png deleted file mode 100644 index 58e8180..0000000 Binary files a/workflow-templates/U24CICD_V2.drawio.png and /dev/null differ diff --git a/workflow-templates/devcontainer-build-publish-caller.json b/workflow-templates/devcontainer-build-publish-caller.json new file mode 100644 index 0000000..d304963 --- /dev/null +++ b/workflow-templates/devcontainer-build-publish-caller.json @@ -0,0 +1,4 @@ +{ + "name": "devcontainer-build-publish-caller", + "description": "Datajoint devcontainer build and publish caller" +} \ No newline at end of file diff --git a/workflow-templates/devcontainer-build-publish-caller.yaml b/workflow-templates/devcontainer-build-publish-caller.yaml new file mode 100644 index 0000000..c050508 --- /dev/null +++ b/workflow-templates/devcontainer-build-publish-caller.yaml @@ -0,0 +1,15 @@ +name: semantic-release +on: + workflow_dispatch: + secrets: + DOCKERHUB_USERNAME: + required: true + DOCKERHUB_TOKEN: + required: true + +jobs: + call_devcontainer_build_publish: + uses: dj-sciops/.github/.github/workflows/devcontainer-build-publish.yaml@main + with: + DOCKERHUB_USERNAME: ${{secrets.DOCKERHUB_USERNAME}} + DOCKERHUB_TOKEN: ${{secrets.DOCKERHUB_TOKEN}} \ No newline at end of file diff --git a/workflow-templates/mkdocs-release-caller.json b/workflow-templates/mkdocs-release-caller.json new file mode 100644 index 0000000..c877b1e --- /dev/null +++ b/workflow-templates/mkdocs-release-caller.json @@ -0,0 +1,4 @@ +{ + "name": "mkdocs-release-caller", + "description": "Datajoint mkdocs release caller" +} \ No newline at end of file diff --git a/workflow-templates/mkdocs-release-caller.yaml b/workflow-templates/mkdocs-release-caller.yaml new file mode 100644 index 0000000..7514f7d --- /dev/null +++ b/workflow-templates/mkdocs-release-caller.yaml @@ -0,0 +1,9 @@ +name: semantic-release +on: + workflow_dispatch: + +jobs: + mkdocs_release: + uses: datajoint/.github/.github/workflows/mkdocs_release.yaml@main + permissions: + contents: write \ No newline at end of file diff --git a/workflow-templates/semantic-release-caller.json b/workflow-templates/semantic-release-caller.json new file mode 100644 index 0000000..85bb796 --- /dev/null +++ b/workflow-templates/semantic-release-caller.json @@ -0,0 +1,4 @@ +{ + "name": "semantic-release-caller", + "description": "Datajoint semantic release caller" +} \ No newline at end of file diff --git a/workflow-templates/semantic-release-caller.yaml b/workflow-templates/semantic-release-caller.yaml new file mode 100644 index 0000000..5fd2693 --- /dev/null +++ b/workflow-templates/semantic-release-caller.yaml @@ -0,0 +1,7 @@ +name: semantic-release +on: + workflow_dispatch: + +jobs: + call_semantic_release: + uses: dj-sciops/.github/.github/workflows/semantic-release.yaml@main \ No newline at end of file diff --git a/workflow-templates/u24_element_before_release.properties.json b/workflow-templates/u24_element_before_release.properties.json deleted file mode 100644 index 9624e59..0000000 --- a/workflow-templates/u24_element_before_release.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "u24_element_before_release", - "description": "U24 element CI triggered by every push or open PR" -} \ No newline at end of file diff --git a/workflow-templates/u24_element_before_release.yaml b/workflow-templates/u24_element_before_release.yaml deleted file mode 100644 index 692cf82..0000000 --- a/workflow-templates/u24_element_before_release.yaml +++ /dev/null @@ -1,17 +0,0 @@ -name: u24_element_before_release -on: - pull_request: - push: - branches: - - '**' - tags-ignore: - - '**' - workflow_dispatch: -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_elements_build_alpine: - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - with: - py_ver: 3.9 - image: djbase diff --git a/workflow-templates/u24_element_release_call.properties.json b/workflow-templates/u24_element_release_call.properties.json deleted file mode 100644 index 3eea116..0000000 --- a/workflow-templates/u24_element_release_call.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "u24_element_release_call", - "description": "U24 element CD triggered by u24_element_tag_to_release completed" -} diff --git a/workflow-templates/u24_element_release_call.yaml b/workflow-templates/u24_element_release_call.yaml deleted file mode 100644 index 4324cca..0000000 --- a/workflow-templates/u24_element_release_call.yaml +++ /dev/null @@ -1,28 +0,0 @@ -name: u24_element_release_call -on: - workflow_run: - workflows: ["u24_element_tag_to_release"] - types: - - completed -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - test_call_u24_elements_release_alpine: - if: >- - github.event.workflow_run.conclusion == 'success' && ( contains(github.event.workflow_run.head_branch, 'test') || (github.event.workflow_run.event == 'pull_request')) - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_release.yaml@main - with: - py_ver: 3.9 - twine_repo: testpypi - secrets: - TWINE_USERNAME: ${{secrets.TWINE_TEST_USERNAME}} - TWINE_PASSWORD: ${{secrets.TWINE_TEST_PASSWORD}} - call_u24_elements_release_alpine: - if: >- - github.event.workflow_run.conclusion == 'success' && github.repository_owner == 'datajoint' && !contains(github.event.workflow_run.head_branch, 'test') - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_release.yaml@main - with: - py_ver: 3.9 - secrets: - TWINE_USERNAME: ${{secrets.TWINE_USERNAME}} - TWINE_PASSWORD: ${{secrets.TWINE_PASSWORD}} diff --git a/workflow-templates/u24_element_tag_to_release.properties.json b/workflow-templates/u24_element_tag_to_release.properties.json deleted file mode 100644 index 7385da7..0000000 --- a/workflow-templates/u24_element_tag_to_release.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "u24_element_tag_to_release", - "description": "U24 element CI triggered by release tagging *.*.* or test*.*.*" -} \ No newline at end of file diff --git a/workflow-templates/u24_element_tag_to_release.yaml b/workflow-templates/u24_element_tag_to_release.yaml deleted file mode 100644 index 57334e9..0000000 --- a/workflow-templates/u24_element_tag_to_release.yaml +++ /dev/null @@ -1,14 +0,0 @@ -name: u24_element_tag_to_release -on: - push: - tags: - - '*.*.*' - - 'test*.*.*' -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_elements_build_alpine: - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_element_build.yaml@main - with: - py_ver: 3.9 - image: djbase diff --git a/workflow-templates/u24_workflow_before_release.properties.json b/workflow-templates/u24_workflow_before_release.properties.json deleted file mode 100644 index a287f1c..0000000 --- a/workflow-templates/u24_workflow_before_release.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "u24_workflow_before_release", - "description": "U24 workflow CI triggered by every push or open PR" -} \ No newline at end of file diff --git a/workflow-templates/u24_workflow_before_release.yaml b/workflow-templates/u24_workflow_before_release.yaml deleted file mode 100644 index 059595e..0000000 --- a/workflow-templates/u24_workflow_before_release.yaml +++ /dev/null @@ -1,18 +0,0 @@ -name: u24_workflow_before_release -on: - pull_request: - push: - branches: - - '**' - tags-ignore: - - '**' - workflow_dispatch: -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_workflow_build_debian: - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - with: - jhub_ver: 1.4.2 - py_ver: 3.9 - dist: debian diff --git a/workflow-templates/u24_workflow_release_call.properties.json b/workflow-templates/u24_workflow_release_call.properties.json deleted file mode 100644 index c1a4f08..0000000 --- a/workflow-templates/u24_workflow_release_call.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "u24_workflow_release_call", - "description": "U24 workflow CD triggered by u24_workflow_tag_to_release completed" -} \ No newline at end of file diff --git a/workflow-templates/u24_workflow_release_call.yaml b/workflow-templates/u24_workflow_release_call.yaml deleted file mode 100644 index 59e995a..0000000 --- a/workflow-templates/u24_workflow_release_call.yaml +++ /dev/null @@ -1,20 +0,0 @@ -name: u24_workflow_release_call -on: - workflow_run: - workflows: ["u24_workflow_tag_to_release"] - types: - - completed -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_workflow_release_debian: - if: >- - github.event.workflow_run.conclusion == 'success' && github.repository_owner == 'datajoint' - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_workflow_release.yaml@main - with: - jhub_ver: 1.4.2 - py_ver: 3.9 - dist: debian - secrets: - REGISTRY_USERNAME: ${{secrets.DOCKER_USERNAME}} - REGISTRY_PASSWORD: ${{secrets.DOCKER_PASSWORD}} diff --git a/workflow-templates/u24_workflow_tag_to_release.properties.json b/workflow-templates/u24_workflow_tag_to_release.properties.json deleted file mode 100644 index 5d2ae2a..0000000 --- a/workflow-templates/u24_workflow_tag_to_release.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "u24_workflow_tag_to_release", - "description": "U24 workflow CI triggered by release tagging *.*.*" -} diff --git a/workflow-templates/u24_workflow_tag_to_release.yaml b/workflow-templates/u24_workflow_tag_to_release.yaml deleted file mode 100644 index 4bac5bc..0000000 --- a/workflow-templates/u24_workflow_tag_to_release.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: u24_workflow_tag_to_release -on: - push: - tags: - - '*.*.*' - - 'test*.*.*' -jobs: - call_context_check: - uses: dj-sciops/djsciops-cicd/.github/workflows/context_check.yaml@main - call_u24_workflow_build_debian: - uses: dj-sciops/djsciops-cicd/.github/workflows/u24_workflow_build.yaml@main - with: - jhub_ver: 1.4.2 - py_ver: 3.9 - dist: debian