diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7d906b14..6057f327 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,9 +1,11 @@ name: "Create release and publish packages to Sonatype" -on: - push: - branches: - - main +on: push + +#on: +# push: +# branches: +# - main permissions: id-token: write @@ -34,8 +36,6 @@ jobs: # Once these changes are made, they are pushed to the main branch create-release: runs-on: ubuntu-latest - outputs: - new-version: ${{ steps.create-release.outputs.new-version }} needs: check-for-release-file if: needs.check-for-release-file.outputs.has-release == 'true' steps: @@ -48,9 +48,6 @@ jobs: git fetch --tags LATEST_TAG=$(git describe --tags $(git rev-list --tags --max-count=1)) python3 .github/scripts/create_release.py ${LATEST_TAG} $(pwd) - - VERSION_TAG="$(cat CHANGELOG.md | grep -m1 -o 'v[0-9]\+\.[0-9]\+\.[0-9]\+')" - echo "new-version=${VERSION_TAG:1}" >> $GITHUB_OUTPUT - name: Generate a token id: generate-token @@ -60,27 +57,27 @@ jobs: private-key: ${{ secrets.WELLCOME_COLLECTION_APP_PRIVATE_KEY }} - name: Configure git - # We need to give the GitHub action full repo privileges via a PAT so that it can push the release directly into main + # We need to give the GitHub action full repo privileges so that it can push the release directly into main run: | git config --global user.name "GitHub on behalf of Wellcome Collection" git config --global user.email "wellcomedigitalplatform@wellcome.ac.uk" git remote set-url origin https://x-access-token:${{ steps.generate-token.outputs.token }}@github.com/${{ github.repository }}.git - - - name: Commit and push changes - run: | - git checkout main - git pull - - git add CHANGELOG.md build.sbt - git rm RELEASE.md - - NEW_TAG="v${{steps.create-release.outputs.new-version}}" - git commit -m "$(printf "Release: Bump version to ${NEW_TAG}\n\n[skip ci]")" - git tag ${NEW_TAG} - - git push origin main - git push origin --tags +# +# - name: Commit and push changes +# run: | +# git checkout main +# git pull +# +# git add CHANGELOG.md build.sbt +# git rm RELEASE.md +# +# NEW_TAG="$(cat CHANGELOG.md | grep -m1 -o 'v[0-9]\+\.[0-9]\+\.[0-9]\+')" +# git commit -m "$(printf "Release: Bump version to ${NEW_TAG}\n\n[skip ci]")" +# git tag ${NEW_TAG} +# +# git push origin main +# git push origin --tags # All sbt projects are published to Sonatype (https://central.sonatype.com/namespace/org.wellcomecollection). # Publishing involves several steps: @@ -130,16 +127,8 @@ jobs: cache: sbt - name: Publish to Sonatype run: | - ARTIFACT_NAME="${{ matrix.service }}_2.12" - NEW_VERSION="${{needs.create-release.outputs.new-version}}" - - SONATYPE_RESPONSE=$(curl "https://central.sonatype.com/solrsearch/select?q=g:org.wellcomecollection%20a:$ARTIFACT_NAME%20v:$NEW_VERSION") - ARTIFACT_COUNT=$(echo SONATYPE_RESPONSE | jq '.response | .numFound') - - if [[ "ARTIFACT_COUNT" -eq 0 ]]; then - echo "Publishing package $ARTIFACT_NAME, version $NEW_VERSION to Sonatype." - PGP_PASSPHRASE=${{ secrets.GPG_PASSPHRASE }} sbt "project ${{ matrix.service }}" publishSigned - sbt "project ${{ matrix.service }}" sonatypeBundleRelease - else - echo "Package $ARTIFACT_NAME, version $NEW_VERSION already exists in Sonatype. Exiting." - fi + ARTIFACT_NAME="http_2.12" + NEW_VERSION=$(sbt "project http" -Dsbt.supershell=false -error "print version" | tr -d "\n") + + SONATYPE_RESPONSE=$(curl -s "https://central.sonatype.com/solrsearch/select?q=g:org.wellcomecollection%20a:$ARTIFACT_NAME%20v:$NEW_VERSION") + diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 00000000..f4244dbc --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,3 @@ +RELEASE_TYPE: minor + +Just testing.