This is an automated email from the ASF dual-hosted git repository.
piergiorgio pushed a commit to branch CONNECTORS-1754
in repository https://gitbox.apache.org/repos/asf/manifoldcf.git
The following commit(s) were added to refs/heads/CONNECTORS-1754 by this push:
new 46c94b2d4 Fix for the GitHub workflows (CONNECTORS-1754)
46c94b2d4 is described below
commit 46c94b2d47464068b30c2708fc294276b2a7da01
Author: Piergiorgio Lucidi <[email protected]>
AuthorDate: Mon Jun 17 20:16:25 2024 +0200
Fix for the GitHub workflows (CONNECTORS-1754)
---
.github/workflows/publish-maven-release.yml | 52 ++++++++
.../workflows/publish-release-candidate-svn.yml | 136 +++++++++++++++++++++
2 files changed, 188 insertions(+)
diff --git a/.github/workflows/publish-maven-release.yml
b/.github/workflows/publish-maven-release.yml
new file mode 100644
index 000000000..6b9f89388
--- /dev/null
+++ b/.github/workflows/publish-maven-release.yml
@@ -0,0 +1,52 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+name: Publish Release Artifacts
+run-name: ${{ github.actor }} is publishing release artifacts
+
+on:
+ workflow_dispatch:
+
+jobs:
+ deployReleaseMavenArtifacts:
+ if: github.repository == 'apache/manifoldcf'
+ name: "Deploy Apache ManifoldCF Snapshot"
+ runs-on: ubuntu-22.04
+ steps:
+ - name: Checkout
+ uses: actions/[email protected]
+ - name: Set up Java
+ uses: actions/[email protected]
+ with:
+ java-version: '11'
+ distribution: 'temurin'
+ architecture: x64
+ cache: maven
+ server-id: apache.releases.https
+ server-username: NEXUS_USER
+ server-password: NEXUS_PW
+ - name: Ant Build
+ run: ant make-core-deps make-deps image
+ - name: Maven Build
+ run: mvn clean install -B -DskipTests -DskipITs
+ - name: Deploy
+ run: mvn deploy -B -DskipTests -DskipITs -Dmaven.javadoc.skip=true
+ env:
+ NEXUS_USER: ${{ secrets.NEXUS_USER }}
+ NEXUS_PW: ${{ secrets.NEXUS_PW }}
diff --git a/.github/workflows/publish-release-candidate-svn.yml
b/.github/workflows/publish-release-candidate-svn.yml
new file mode 100644
index 000000000..fd945f747
--- /dev/null
+++ b/.github/workflows/publish-release-candidate-svn.yml
@@ -0,0 +1,136 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+name: Publish Release Candidate in ASF SVN
+run-name: ${{ github.actor }} is publishing the Release Candidate on ASF SVN🚀
+
+on:
+ workflow_dispatch:
+ inputs:
+ APACHE_ID:
+ description: Your Apache id
+ required: true
+ APACHE_PASSWORD:
+ description: Your Apache password
+ required: true
+
+jobs:
+ finalizeReleaseCandidateInSVN:
+ runs-on: ubuntu-22.04
+ steps:
+ - uses: actions/[email protected]
+ - name: Get Maven POM version
+ id: mavenProjectVersion
+ run: echo "version=$(mvn help:evaluate -Dexpression=project.version -q
-DforceStdout)" >> $GITHUB_OUTPUT
+
+ - name: Create Standard Maven Version
+ id: standardMavenVersion
+ run: |
+ currentMavenVersion="${{ steps.mavenProjectVersion.outputs.version
}}"
+ set -- currentMavenVersion
+ echo "version=${1%-*}" >> $GITHUB_OUTPUT
+
+ - name: Download artifacts from GitHub and Upload artifacts into ASF SVN
+ run: |
+ svn co https://dist.apache.org/repos/dist/dev/manifoldcf
+ mkdir -p apache-manifoldcf-${{
steps.mavenProjectVersion.outputs.version }}
+ cd apache-manifoldcf-${{ steps.mavenProjectVersion.outputs.version }}
+
+ if (svn ls "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip"); then
+ echo "Removing existing apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip"
+ svn delete "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip"
+ fi
+
+ if (svn ls "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz"); then
+ echo "Removing existing apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz"
+ svn delete "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz"
+ fi
+
+ if (svn ls "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz"); then
+ echo "Removing existing apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz"
+ svn delete "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz"
+ fi
+
+ if (svn ls "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip"); then
+ echo "Removing existing apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip"
+ svn delete "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip"
+ fi
+
+ if (svn ls "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz"); then
+ echo "Removing existing apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz"
+ svn delete "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz"
+ fi
+
+ if (svn ls "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip"); then
+ echo "Removing existing apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip"
+ svn delete "apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip"
+ fi
+
+ echo "Downloading:
https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-bin.zip"
+ wget https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-bin.zip
-O
"apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-bin.zip"
+ echo "Downloading:
https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-bin.tar.gz"
+ wget https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-bin.tar.gz
-O
"apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-bin.tar.gz"
+ echo "Downloading:
https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-lib.tar.gz"
+ wget https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-lib.tar.gz
-O
"apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-lib.tar.gz"
+ echo "Downloading:
https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-lib.zip"
+ wget https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-lib.zip
-O
"apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-lib.zip"
+ echo "Downloading:
https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-src.tar.gz"
+ wget https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-src.tar.gz
-O
"apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-src.tar.gz"
+ echo "Downloading:
https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-src.zip"
+ wget https://github.com/apache/manifoldcf/releases/download/${{
steps.mavenProjectVersion.outputs.version
}}/apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-src.zip
-O
"apache-manifoldcf-${{steps.standardMavenVersion.outputs.version}}-dev-src.zip"
+
+ - name: Import GPG key
+ id: import_gpg
+ uses:
crazy-max/ghaction-import-gpg@111c56156bcc6918c056dbef52164cfa583dc549
+ with:
+ gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
+ passphrase: ${{ secrets.GPG_PASSPHRASE }}
+
+ - name: Mask Apache Password
+ run: |
+ # Workaround for Actions bug -
https://github.com/actions/runner/issues/643
+ APACHE_PASS=$(jq -r '.inputs.APACHE_PASSWORD' $GITHUB_EVENT_PATH)
+ echo "::add-mask::$APACHE_PASS"
+
+ - name: Generate file hashes
+ run: |
+ echo "$GPG_PRIVATE_KEY" | gpg --batch --import --passphrase
"$GPG_PASSPHRASE"
+ gpg --local-user "${{steps.import_gpg.outputs.name}}" --armor
--output apache-manifoldcf-${{ steps.artifactVersion.outputs.version
}}-src.zip.asc --detach-sig apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip
+ gpg --local-user "${{steps.import_gpg.outputs.name}}" --armor
--output apache-manifoldcf-${{ steps.artifactVersion.outputs.version
}}-src.tar.gz.asc --detach-sig apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz
+ gpg --local-user "${{steps.import_gpg.outputs.name}}" --armor
--output apache-manifoldcf-${{ steps.artifactVersion.outputs.version
}}-lib.zip.asc --detach-sig apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip
+ gpg --local-user "${{steps.import_gpg.outputs.name}}" --armor
--output apache-manifoldcf-${{ steps.artifactVersion.outputs.version
}}-lib.tar.gz.asc --detach-sig apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz
+ gpg --local-user "${{steps.import_gpg.outputs.name}}" --armor
--output apache-manifoldcf-${{ steps.artifactVersion.outputs.version
}}-bin.zip.asc --detach-sig apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip
+ gpg --local-user "${{steps.import_gpg.outputs.name}}" --armor
--output apache-manifoldcf-${{ steps.artifactVersion.outputs.version
}}-bin.tar.gz.asc --detach-sig apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz
+
+ gpg --print-md MD5 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip.md5
+ gpg --print-md MD5 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz.md5
+ gpg --print-md MD5 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip.md5
+ gpg --print-md MD5 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz.md5
+ gpg --print-md MD5 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip.md5
+ gpg --print-md MD5 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz.md5
+
+ gpg --print-md SHA512 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.zip.sha512
+ gpg --print-md SHA512 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-src.tar.gz.sha512
+ gpg --print-md SHA512 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.zip.sha512
+ gpg --print-md SHA512 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-lib.tar.gz.sha512
+ gpg --print-md SHA512 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.zip.sha512
+ gpg --print-md SHA512 apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz > apache-manifoldcf-${{
steps.artifactVersion.outputs.version }}-bin.tar.gz.sha512
+
+ svn add --force .
+ svn status
+ svn commit -m "Staging Apache ManifoldCF ${{
steps.artifactVersion.outputs.version }}" --non-interactive --username "${{
github.event.inputs.APACHE_ID }}" --password "${{
github.event.inputs.APACHE_PASSWORD }}"
+
\ No newline at end of file