diff --git a/.github/workflows/release-browser.yml b/.github/workflows/release-browser.yml index a79f7db9d5..a129b63d41 100644 --- a/.github/workflows/release-browser.yml +++ b/.github/workflows/release-browser.yml @@ -24,7 +24,7 @@ jobs: name: Setup runs-on: ubuntu-20.04 outputs: - release-version: ${{ steps.version.outputs.package-version }} + release-version: ${{ steps.version.outputs.version }} branch-name: ${{ steps.branch.outputs.branch-name }} steps: - name: Branch check @@ -42,19 +42,13 @@ jobs: - name: Check Release Version id: version - run: | - version=$( jq -r ".version" src/manifest.json) - previous_release_tag_version=$( - curl -sL https://api.github.com/repos/$GITHUB_REPOSITORY/releases | jq -r 'first(.[] | select(.tag_name | startswith("browser"))).tag_name' - ) - - if [ "v$version" == "$previous_release_tag_version" ] && \ - [ "${{ github.event.inputs.release_type }}" == "Initial Release" ]; then - echo "[!] Already released v$version. Please bump version to continue" - exit 1 - fi - - echo "::set-output name=package-version::$version" + uses: bitwarden/gh-actions/release-version-check@ea9fab01d76940267b4147cc1c4542431246b9f6 + with: + release-type: ${{ github.event.inputs.release_type }} + project-type: ts + file: apps/browser/src/manifest.json + monorepo: true + monorepo-project: browser - name: Get branch name id: branch diff --git a/.github/workflows/release-cli.yml b/.github/workflows/release-cli.yml index 366b5e5798..6ab350c8ce 100644 --- a/.github/workflows/release-cli.yml +++ b/.github/workflows/release-cli.yml @@ -23,7 +23,7 @@ jobs: name: Setup runs-on: ubuntu-20.04 outputs: - package_version: ${{ steps.retrieve-version.outputs.package_version }} + release-version: ${{ steps.version.outputs.version }} branch-name: ${{ steps.branch.outputs.branch-name }} steps: - name: Branch check @@ -39,29 +39,15 @@ jobs: - name: Checkout repo uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # v3.0.2 - - name: Retrieve CLI release version - id: retrieve-version - run: | - PKG_VERSION=$(jq -r .version package.json) - echo "::set-output name=package_version::$PKG_VERSION" - - - name: Check to make sure CLI release version has been bumped - if: ${{ github.event.inputs.release_type == 'Initial Release' }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - latest_ver=$( - curl -sL https://api.github.com/repos/$GITHUB_REPOSITORY/releases | jq -r 'first(.[] | select(.tag_name | startswith("cli"))).tag_name' - ) - latest_ver=${latest_ver:1} - echo "Latest version: $latest_ver" - ver=${{ steps.retrieve-version.outputs.package_version }} - echo "Version: $ver" - if [ "$latest_ver" = "$ver" ]; then - echo "Version has not been bumped!" - exit 1 - fi - shell: bash + - name: Check Release Version + id: version + uses: bitwarden/gh-actions/release-version-check@ea9fab01d76940267b4147cc1c4542431246b9f6 + with: + release-type: ${{ github.event.inputs.release_type }} + project-type: ts + file: apps/cli/package.json + monorepo: true + monorepo-project: cli - name: Get branch name id: branch @@ -80,7 +66,7 @@ jobs: - name: Create release uses: ncipollo/release-action@58ae73b360456532aafd58ee170c045abbeaee37 # v1.10.0 env: - PKG_VERSION: ${{ steps.retrieve-version.outputs.package_version }} + PKG_VERSION: ${{ steps.version.outputs.version }} with: artifacts: "apps/cli/bw-windows-${{ env.PKG_VERSION }}.zip, apps/cli/bw-windows-sha256-${{ env.PKG_VERSION }}.txt, @@ -104,7 +90,7 @@ jobs: runs-on: ubuntu-20.04 needs: setup env: - _PKG_VERSION: ${{ needs.setup.outputs.package_version }} + _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # v3.0.2 @@ -147,7 +133,7 @@ jobs: runs-on: windows-2019 needs: setup env: - _PKG_VERSION: ${{ needs.setup.outputs.package_version }} + _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # v3.0.2 @@ -183,7 +169,7 @@ jobs: runs-on: ubuntu-20.04 needs: setup env: - _PKG_VERSION: ${{ needs.setup.outputs.package_version }} + _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # v3.0.2 diff --git a/.github/workflows/release-desktop.yml b/.github/workflows/release-desktop.yml index e3e510141b..a8075b6eb7 100644 --- a/.github/workflows/release-desktop.yml +++ b/.github/workflows/release-desktop.yml @@ -13,7 +13,6 @@ on: - Initial Release - Redeploy - Dry Run - defaults: run: shell: bash @@ -24,7 +23,7 @@ jobs: name: Setup runs-on: ubuntu-20.04 outputs: - package_version: ${{ steps.retrieve-version.outputs.package_version }} + release-version: ${{ steps.version.outputs.verison }} branch-name: ${{ steps.branch.outputs.branch-name }} steps: - name: Branch check @@ -40,28 +39,15 @@ jobs: - name: Checkout repo uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4 - - name: Get Package Version - id: retrieve-version - run: | - PKG_VERSION=$(jq -r .version src/package.json) - echo "::set-output name=package_version::$PKG_VERSION" - - - name: Check to make sure Desktop release version has been bumped - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - latest_ver=$( - curl -sL https://api.github.com/repos/$GITHUB_REPOSITORY/releases | jq -r 'first(.[] | select(.tag_name | startswith("desktop"))).tag_name' - ) - latest_ver=${latest_ver:1} - echo "Latest version: $latest_ver" - ver=${{ steps.retrieve-version.outputs.package_version }} - echo "Version: $ver" - if [ "$latest_ver" = "$ver" ] && \ - [ "${{ github.event.inputs.release_type }}" == "Initial Release" ]; then - echo "Version has not been bumped!" - exit 1 - fi + - name: Check Release Version + id: version + uses: bitwarden/gh-actions/release-version-check@ea9fab01d76940267b4147cc1c4542431246b9f6 + with: + release-type: ${{ github.event.inputs.release_type }} + project-type: ts + file: apps/desktop/src/package.json + monorepo: true + monorepo-project: desktop - name: Get branch name id: branch @@ -91,7 +77,7 @@ jobs: - name: Rename .pkg to .pkg.archive env: - PKG_VERSION: ${{ steps.retrieve-version.outputs.package_version }} + PKG_VERSION: ${{ steps.version.outputs.version }} working-directory: ./artifacts run: mv Bitwarden-${{ env.PKG_VERSION }}-universal.pkg Bitwarden-${{ env.PKG_VERSION }}-universal.pkg.archive @@ -111,7 +97,7 @@ jobs: - name: Create release uses: ncipollo/release-action@95215a3cb6e6a1908b3c44e00b4fdb15548b1e09 # v2.8.5 env: - PKG_VERSION: ${{ steps.retrieve-version.outputs.package_version }} + PKG_VERSION: ${{ steps.version.outputs.version }} with: artifacts: "artifacts/Bitwarden-${{ env.PKG_VERSION }}-amd64.deb, artifacts/Bitwarden-${{ env.PKG_VERSION }}-x86_64.rpm, @@ -146,7 +132,7 @@ jobs: runs-on: ubuntu-20.04 needs: setup env: - _PKG_VERSION: ${{ needs.setup.outputs.package_version }} + _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout Repo uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4 @@ -194,7 +180,7 @@ jobs: runs-on: windows-2019 needs: setup env: - _PKG_VERSION: ${{ needs.setup.outputs.package_version }} + _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout Repo uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4