diff --git a/.github/workflows/build_khoj_el.yml b/.github/workflows/build_khoj_el.yml index 54f626d6..43e064ee 100644 --- a/.github/workflows/build_khoj_el.yml +++ b/.github/workflows/build_khoj_el.yml @@ -6,12 +6,14 @@ on: push: branches: - 'master' + - 'release/1.x' paths: - src/interface/emacs/*.el - .github/workflows/build_khoj_el.yml pull_request: branches: - 'master' + - 'release/1.x' paths: - src/interface/emacs/*.el - .github/workflows/build_khoj_el.yml diff --git a/.github/workflows/desktop.yml b/.github/workflows/desktop.yml index 003d899f..2f12ec74 100644 --- a/.github/workflows/desktop.yml +++ b/.github/workflows/desktop.yml @@ -6,6 +6,7 @@ on: - "*" branches: - 'master' + - 'release/1.x' paths: - src/interface/desktop/** - .github/workflows/desktop.yml diff --git a/.github/workflows/dockerize.yml b/.github/workflows/dockerize.yml index 0bd3a7e9..2aec7d54 100644 --- a/.github/workflows/dockerize.yml +++ b/.github/workflows/dockerize.yml @@ -6,6 +6,7 @@ on: - "*" branches: - master + - release/1.x paths: - src/khoj/** - src/interface/web/** @@ -37,8 +38,8 @@ env: # Tag Image with tag name on release # else with user specified tag (default 'dev') if triggered via workflow # else with run_id if triggered via a pull request - # else with 'pre' (if push to master) - DOCKER_IMAGE_TAG: ${{ github.ref_type == 'tag' && github.ref_name || github.event_name == 'workflow_dispatch' && github.event.inputs.tag || 'pre' }} + # else with 'pre' (if push to master) or 'pre-1x' (if push to release/1.x) + DOCKER_IMAGE_TAG: ${{ github.ref_type == 'tag' && github.ref_name || github.event_name == 'workflow_dispatch' && github.event.inputs.tag || github.ref_name == 'release/1.x' && 'pre-1x' || 'pre' }} jobs: build: @@ -153,18 +154,32 @@ jobs: - name: Create and Push Local Manifest if: github.event.inputs.khoj == 'true' || github.event_name == 'push' run: | + # Only put "latest.*" tag on stable releases (i.e 1.x, 2.x+) + if [[ "${{ env.DOCKER_IMAGE_TAG }}" =~ ^[1-9]\.[0-9]+\.[0-9]+$ ]]; then + LATEST_TAG="latest" + else + LATEST_TAG="${{ env.DOCKER_IMAGE_TAG }}" + fi + docker buildx imagetools create \ -t ghcr.io/${{ github.repository }}:${{ env.DOCKER_IMAGE_TAG }} \ - -t ghcr.io/${{ github.repository }}:${{ github.ref_type == 'tag' && 'latest' || env.DOCKER_IMAGE_TAG }} \ + -t ghcr.io/${{ github.repository }}:${LATEST_TAG} \ ghcr.io/${{ github.repository }}:${{ env.DOCKER_IMAGE_TAG }}-amd64 \ ghcr.io/${{ github.repository }}:${{ env.DOCKER_IMAGE_TAG }}-arm64 - name: Create and Push Cloud Manifest if: github.event.inputs.khoj-cloud == 'true' || github.event_name == 'push' run: | + # Only put "latest.*" tag on stable releases (i.e 1.x, 2.x+) + if [[ "${{ env.DOCKER_IMAGE_TAG }}" =~ ^[1-9]\.[0-9]+\.[0-9]+$ ]]; then + LATEST_TAG="latest" + else + LATEST_TAG="${{ env.DOCKER_IMAGE_TAG }}" + fi + docker buildx imagetools create \ -t ghcr.io/${{ github.repository }}-cloud:${{ env.DOCKER_IMAGE_TAG }} \ - -t ghcr.io/${{ github.repository }}-cloud:${{ github.ref_type == 'tag' && 'latest' || env.DOCKER_IMAGE_TAG }} \ + -t ghcr.io/${{ github.repository }}-cloud:${LATEST_TAG} \ ghcr.io/${{ github.repository }}-cloud:${{ env.DOCKER_IMAGE_TAG }}-amd64 \ ghcr.io/${{ github.repository }}-cloud:${{ env.DOCKER_IMAGE_TAG }}-arm64 diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index 63812331..c5ce4c44 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -2,6 +2,9 @@ name: pre-commit on: pull_request: + branches: + - master + - release/1.x paths: - src/** - tests/** @@ -12,6 +15,7 @@ on: push: branches: - master + - release/1.x paths: - src/khoj/** - tests/** diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index c52d8d39..e933e9a5 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -6,6 +6,7 @@ on: - "*" branches: - 'master' + - 'release/1.x' paths: - src/khoj/** - src/interface/web/** @@ -14,6 +15,7 @@ on: pull_request: branches: - 'master' + - 'release/1.x' paths: - src/khoj/** - src/interface/web/** @@ -74,7 +76,7 @@ jobs: path: dist/khoj-*.whl - name: 📦 Publish Python Package to PyPI - if: startsWith(github.ref, 'refs/tags') || github.ref == 'refs/heads/master' + if: startsWith(github.ref, 'refs/tags') || github.ref == 'refs/heads/master' || github.ref == 'refs/heads/release/1.x' uses: pypa/gh-action-pypi-publish@release/v1.12 with: skip-existing: true diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2c6f087c..9ed91863 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,6 +2,9 @@ name: test on: pull_request: + branches: + - master + - release/1.x paths: - src/khoj/** - tests/** @@ -13,6 +16,7 @@ on: push: branches: - master + - release/1.x paths: - src/khoj/** - tests/** diff --git a/.github/workflows/test_khoj_el.yml b/.github/workflows/test_khoj_el.yml index 6e22261d..b2fab297 100644 --- a/.github/workflows/test_khoj_el.yml +++ b/.github/workflows/test_khoj_el.yml @@ -4,6 +4,7 @@ on: push: branches: - 'master' + - 'release/1.x' paths: - src/interface/emacs/*.el - src/interface/emacs/tests/*.el @@ -11,6 +12,7 @@ on: pull_request: branches: - 'master' + - 'release/1.x' paths: - src/interface/emacs/*.el - src/interface/emacs/tests/*.el diff --git a/scripts/bump_version.sh b/scripts/bump_version.sh index c8221692..e015a6b4 100755 --- a/scripts/bump_version.sh +++ b/scripts/bump_version.sh @@ -125,7 +125,7 @@ do $project_root/manifest.json \ $project_root/versions.json git commit -m "Release Khoj version $current_version" - git tag $current_version master + git tag $current_version ;; c) # Get current project version @@ -172,7 +172,7 @@ do $project_root/manifest.json \ $project_root/versions.json git commit -m "Release Khoj version $current_version" - git tag $current_version master + git tag $current_version ;; n) # Induce hatch to compute next version number