Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -132,10 +132,6 @@ version-resolver:
- 'type: patch'
default: patch
template: |
## Disclaimer: Release Created While Under Incubation

Apache Grails is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Groovy Project. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.

## What's Changed

$CHANGES
Expand Down
6 changes: 3 additions & 3 deletions .github/scripts/releaseDistributions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ RELEASE_TAG="$1"
RELEASE_VERSION="${RELEASE_TAG#v}"
SVN_USER="$2"
SVN_PASS="$3"
RELEASE_ROOT="https://dist.apache.org/repos/dist/release/incubator/grails/spring-security"
DEV_ROOT="https://dist.apache.org/repos/dist/dev/incubator/grails/spring-security"
RELEASE_ROOT="https://dist.apache.org/repos/dist/release/grails/spring-security"
DEV_ROOT="https://dist.apache.org/repos/dist/dev/grails/spring-security"

if [[ -z "${RELEASE_TAG}" ]]; then
echo "❌ ERROR: Release Tag must not be empty." >&2
Expand Down Expand Up @@ -79,5 +79,5 @@ if svn_exists "${RELEASE_VERSION_URL}"; then
fi

echo "🚀 Promoting ${DEV_VERSION_URL} -> ${RELEASE_VERSION_URL}"
svn mv "${svn_flags[@]}" -m "Promote Apache Grails (incubating) ${RELEASE_VERSION} from dev to release" "${DEV_VERSION_URL}" "${RELEASE_VERSION_URL}"
svn mv "${svn_flags[@]}" -m "Promote Apache Grails ${RELEASE_VERSION} from dev to release" "${DEV_VERSION_URL}" "${RELEASE_VERSION_URL}"
echo "✅ Promoted"
4 changes: 2 additions & 2 deletions .github/vote_templates/announce.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
The Apache Grails (incubating) community is pleased to announce the release of Apache Grails (incubating) Spring Security Plugin ${VERSION}.
The Apache Grails community is pleased to announce the release of Apache Grails Spring Security Plugin ${VERSION}.

Grails is a powerful Groovy-based web application framework for the JVM built on top of Spring Boot that has many plugins to further extend its functionality.

Expand All @@ -17,4 +17,4 @@ Grails Resources:
- Mailing lists: https://grails.apache.org/community.html

Happy Coding,
The Apache Grails (incubating) Team
The Apache Grails Team
30 changes: 0 additions & 30 deletions .github/vote_templates/groovy_pmc.txt

This file was deleted.

16 changes: 8 additions & 8 deletions .github/vote_templates/staged.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Hi Everyone,

I am happy to start the VOTE thread for an Apache Grails (incubating) Spring Security Plugin release of version ${VERSION}!
I am happy to start the VOTE thread for an Apache Grails Spring Security Plugin release of version ${VERSION}!

Release notes for the release are here:
https://github.com/apache/grails-spring-security/releases/tag/v${VERSION}
Expand All @@ -10,25 +10,25 @@ https://github.com/apache/grails-spring-security/releases/tag/v${VERSION}
Tag commit id: ${VERSION_COMMIT_ID}

The artifacts to be voted on are located as follows (r${DIST_SVN_REVISION}):
Source release: https://dist.apache.org/repos/dist/dev/incubator/grails/spring-security/${VERSION}/sources
Source release: https://dist.apache.org/repos/dist/dev/grails/spring-security/${VERSION}/sources

Release artifacts are signed with a key from the following file:
https://dist.apache.org/repos/dist/release/incubator/grails/KEYS
https://dist.apache.org/repos/dist/release/grails/KEYS

Please vote on releasing this package as: Apache Grails (incubating) Spring Security Plugin ${VERSION}.
Please vote on releasing this package as: Apache Grails Spring Security Plugin ${VERSION}.

Reminder on ASF release approval requirements for PPMC members:
Reminder on ASF release approval requirements for PMC members:
https://www.apache.org/legal/release-policy.html#release-approval

Hints on validating checksums/signatures (but replace md5sum with sha512sum):
https://www.apache.org/info/verification.html

The vote is open for a minimum of 72 hours and passes if a majority of at least
three +1 PPMC votes are cast.
three +1 PMC votes are cast.

[ ] +1 Release Apache Grails (incubating) Spring Security Plugin ${VERSION}
[ ] +1 Release Apache Grails Spring Security Plugin ${VERSION}
[ ] 0 I don't have a strong opinion about this, but I assume it's ok
[ ] -1 Do not release Apache Grails (incubating) Spring Security Plugin ${VERSION} because...
[ ] -1 Do not release Apache Grails Spring Security Plugin ${VERSION} because...

Here is my vote:

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-abort.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ jobs:
export VERSION="${{ steps.release_version.outputs.value }}"
svnmucc --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive \
-m "Remove grails dev version $VERSION" \
rm "https://dist.apache.org/repos/dist/dev/incubator/grails/spring-security/$VERSION"
rm "https://dist.apache.org/repos/dist/dev/grails/spring-security/$VERSION"
- name: "Cancel GitHub Actions"
continue-on-error: true
env:
Expand Down
60 changes: 19 additions & 41 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ jobs:
find . -depth \( -type f -o -type d \) -exec touch -d "@${SOURCE_DATE_EPOCH}" {} +
- name: "📦 Create source distribution ZIP"
run: |
zip -r "apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip" ${{ needs.publish.outputs.extract_repository_name }} -x '${{ needs.publish.outputs.extract_repository_name }}/.git/*' -x '${{ needs.publish.outputs.extract_repository_name }}/.github/*'
zip -r "apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip" ${{ needs.publish.outputs.extract_repository_name }} -x '${{ needs.publish.outputs.extract_repository_name }}/.git/*' -x '${{ needs.publish.outputs.extract_repository_name }}/.github/*'
- name: '🔐 Set up GPG'
run: |
echo "${{ secrets.GRAILS_GPG_KEY }}" | gpg --batch --import
Expand All @@ -189,19 +189,19 @@ jobs:
env:
GPG_KEY_ID: ${{ secrets.GPG_KEY_ID }}
run: |
gpg --default-key "${GPG_KEY_ID}" --batch --yes --pinentry-mode loopback --armor --detach-sign ./apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip
gpg --default-key "${GPG_KEY_ID}" --batch --yes --pinentry-mode loopback --armor --detach-sign ./apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip
- name: "📦 Create source distribution checksum"
run: |
sha512sum ./apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip > "apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip.sha512"
cat ./apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip.sha512
sha512sum ./apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip > "apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip.sha512"
cat ./apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip.sha512
- name: "🚀 Upload ZIP and Signature to GitHub Release"
uses: softprops/action-gh-release@da05d552573ad5aba039eaac05058a918a7bf631
with:
tag_name: v${{ needs.publish.outputs.release_version }}
files: |
apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip
apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip.sha512
apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-incubating-src.zip.asc
apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip
apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip.sha512
apache-${{ needs.publish.outputs.extract_repository_name }}-${{ needs.publish.outputs.release_version }}-src.zip.asc
- name: "🗑️ Remove CHECKSUMS.txt asset from release"
working-directory: '${{ needs.publish.outputs.extract_repository_name }}'
env:
Expand Down Expand Up @@ -253,29 +253,29 @@ jobs:
run: |
set -e

if svn ls https://dist.apache.org/repos/dist/dev/incubator/grails --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive; then
if svn ls https://dist.apache.org/repos/dist/dev/grails --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive; then
echo "Dev Folder 'grails' already exists — skipping creation"
else
echo "Dev Folder 'grails' does not exist, creating"
svnmucc --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive \
mkdir https://dist.apache.org/repos/dist/dev/incubator/grails \
mkdir https://dist.apache.org/repos/dist/dev/grails \
-m "Create 'grails' dev folder"
fi
- name: "👀 Ensure grails spring-security folder exists"
run: |
set -e

if svn ls https://dist.apache.org/repos/dist/dev/incubator/grails/spring-security --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive; then
if svn ls https://dist.apache.org/repos/dist/dev/grails/spring-security --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive; then
echo "Dev Folder 'grails/spring-security' already exists — skipping creation"
else
echo "Dev Folder 'grails/spring-security' does not exist, creating"
svnmucc --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive \
mkdir https://dist.apache.org/repos/dist/dev/incubator/grails/spring-security \
mkdir https://dist.apache.org/repos/dist/dev/grails/spring-security \
-m "Create 'grails spring-security' dev folder"
fi
- name: "📥 Checkout dev repo"
run: |
svn checkout --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive https://dist.apache.org/repos/dist/dev/incubator/grails/spring-security dev-repo
svn checkout --username "$SVN_USERNAME" --password "$SVN_PASSWORD" --non-interactive https://dist.apache.org/repos/dist/dev/grails/spring-security dev-repo
- name: "🗑️ Remove existing dev version"
run: |
export VERSION="${{ needs.publish.outputs.release_version }}"
Expand All @@ -293,9 +293,9 @@ jobs:
cd dev-repo
mkdir -p $VERSION/sources
cd $VERSION/sources
curl -f -LO https://github.com/apache/${{ needs.publish.outputs.extract_repository_name }}/releases/download/$TAG/apache-${{ needs.publish.outputs.extract_repository_name }}-$VERSION-incubating-src.zip
curl -f -LO https://github.com/apache/${{ needs.publish.outputs.extract_repository_name }}/releases/download/$TAG/apache-${{ needs.publish.outputs.extract_repository_name }}-$VERSION-incubating-src.zip.sha512
curl -f -LO https://github.com/apache/${{ needs.publish.outputs.extract_repository_name }}/releases/download/$TAG/apache-${{ needs.publish.outputs.extract_repository_name }}-$VERSION-incubating-src.zip.asc
curl -f -LO https://github.com/apache/${{ needs.publish.outputs.extract_repository_name }}/releases/download/$TAG/apache-${{ needs.publish.outputs.extract_repository_name }}-$VERSION-src.zip
curl -f -LO https://github.com/apache/${{ needs.publish.outputs.extract_repository_name }}/releases/download/$TAG/apache-${{ needs.publish.outputs.extract_repository_name }}-$VERSION-src.zip.sha512
curl -f -LO https://github.com/apache/${{ needs.publish.outputs.extract_repository_name }}/releases/download/$TAG/apache-${{ needs.publish.outputs.extract_repository_name }}-$VERSION-src.zip.asc
echo "Downloaded the following files:"
ls -l
- name: "Upload distributions"
Expand Down Expand Up @@ -332,31 +332,15 @@ jobs:
run: |
export DIST_SVN_REVISION=$(awk '/Last Changed Rev:/ {print $4}' dev-repo/DIST_SVN_REVISION.txt)

echo "::group::Grails PPMC Vote Email"
echo "::group::Grails PMC Vote Email"
echo "*************************************************"
echo "Subject: [VOTE] Release Apache Grails (incubating) Spring Security Plugin ${VERSION}"
echo "Subject: [VOTE] Release Apache Grails Spring Security Plugin ${VERSION}"
echo "*************************************************"
echo "Body:"
echo "*************************************************"
cat ${{ needs.publish.outputs.extract_repository_name }}/.github/vote_templates/staged.txt | envsubst
echo "*************************************************"
echo "::endgroup::"
- name: '📧 Print Groovy Vote Email'
env:
VERSION: ${{ needs.publish.outputs.release_version }}
VERSION_COMMIT_ID: ${{ needs.publish.outputs.commit_hash }}
run: |
export DIST_SVN_REVISION=$(awk '/Last Changed Rev:/ {print $4}' dev-repo/DIST_SVN_REVISION.txt)

echo "::group::Grails PPMC Vote Email"
echo "*************************************************"
echo "Subject: [VOTE] Approval of Apache Grails (incubating) Spring Security Plugin ${VERSION} release by Groovy PMC"
echo "*************************************************"
echo "Body:"
echo "*************************************************"
cat ${{ needs.publish.outputs.extract_repository_name }}/.github/vote_templates/groovy_pmc.txt | envsubst
echo "*************************************************"
echo "::endgroup::"
release:
environment: release
name: 'VOTE SUCCEEDED - Release Artifacts'
Expand All @@ -367,12 +351,7 @@ jobs:
run: curl -s https://api.ipify.org
- name: "Setup SVN and Tools"
run: sudo apt-get install -y subversion subversion-tools tree gettext-base
- name: "🗳 Grails PPMC Vote Confirmation - MANUAL"
run: |
echo "::group::Manual Confirmation"
echo "🔎 This step is a placeholder that the vote confirmation on [email protected] completed successfully."
echo "::endgroup::"
- name: "🗳 Groovy PMC Vote Confirmation - MANUAL"
- name: "🗳 Grails Vote Confirmation - MANUAL"
run: |
echo "::group::Manual Confirmation"
echo "🔎 This step is a placeholder that the vote confirmation on [email protected] completed successfully."
Expand All @@ -392,7 +371,6 @@ jobs:
echo "::group::Manual ASF Reporter Update"
TODAY=$(date +"%Y-%m-%d")
echo "Check email & update https://reporter.apache.org to mark the release ${{ needs.publish.outputs.release_version }} as complete as of ${TODAY}"
echo "Note: this is a place holder; currently this is not possible since Groovy sponsors us instead of the incubator PMC"
echo "::endgroup::"
docs:
environment: docs
Expand Down Expand Up @@ -472,7 +450,7 @@ jobs:

echo "::group::Announcement Email"
echo "*************************************************"
echo "Subject: [ANNOUNCE] Apache Grails (incubating) Spring Security Plugin ${VERSION}"
echo "Subject: [ANNOUNCE] Apache Grails Spring Security Plugin ${VERSION}"
echo "*************************************************"
echo "Body:"
echo "*************************************************"
Expand Down
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Code of Conduct

Apache Grails (Incubating) follows the ASF [Code of Conduct](https://www.apache.org/foundation/policies/conduct).
Apache Grails follows the ASF [Code of Conduct](https://www.apache.org/foundation/policies/conduct).

If you observe behavior that violates those rules please follow the
[ASF reporting guidelines](https://www.apache.org/foundation/policies/conduct#reporting-guidelines).
1 change: 0 additions & 1 deletion DISCLAIMER

This file was deleted.

Loading
Loading