kopia lustrzana https://github.com/onthegomap/planetiler
update actions
rodzic
8145577453
commit
b6aef02cc9
|
@ -18,10 +18,10 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
- name: Set up JDK 17
|
||||
- name: Set up JDK 21
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
- name: Ensure code formatted with mvn spotless:apply
|
||||
|
@ -34,13 +34,14 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-latest, macos-latest, windows-latest ]
|
||||
jdk: [ 17 ]
|
||||
jdk: [ 21 ]
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
jdk: 17
|
||||
jdk: 21
|
||||
args: "-DargLine='-Duser.language=fr -Duser.country=FR'"
|
||||
- os: ubuntu-latest
|
||||
jdk: 20
|
||||
jdk: 21
|
||||
args: ""
|
||||
runs-on: ${{ matrix.os }}
|
||||
timeout-minutes: 15
|
||||
steps:
|
||||
|
@ -71,10 +72,10 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
- name: Set up JDK 17
|
||||
- name: Set up JDK 21
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
- name: Build and test
|
||||
run: mvn --batch-mode -no-transfer-progress package --file standalone.pom.xml
|
||||
|
@ -102,7 +103,7 @@ jobs:
|
|||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
|
||||
|
@ -139,7 +140,7 @@ jobs:
|
|||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ jobs:
|
|||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
- uses: actions/setup-node@v4
|
||||
|
|
|
@ -18,65 +18,65 @@ jobs:
|
|||
contents: write
|
||||
packages: write
|
||||
steps:
|
||||
- name: Ensure version does not start with 'v'
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
script: |
|
||||
version = context.payload.inputs.version;
|
||||
if (/^v/.test(version)) throw new Error("Bad version number: " + version)
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
- name: Cache data/sources
|
||||
uses: ./.github/cache-sources-action
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: '17'
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
server-id: ossrh
|
||||
server-username: MAVEN_USERNAME
|
||||
server-password: MAVEN_PASSWORD
|
||||
- name: Ensure version does not start with 'v'
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
script: |
|
||||
version = context.payload.inputs.version;
|
||||
if (/^v/.test(version)) throw new Error("Bad version number: " + version)
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
- name: Cache data/sources
|
||||
uses: ./.github/cache-sources-action
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: '21'
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
server-id: ossrh
|
||||
server-username: MAVEN_USERNAME
|
||||
server-password: MAVEN_PASSWORD
|
||||
|
||||
- name: Check tag does not exist yet
|
||||
run: if git rev-list "v${{ github.event.inputs.version }}"; then echo "Tag already exists. Aborting the release process."; exit 1; fi
|
||||
- name: Check tag does not exist yet
|
||||
run: if git rev-list "v${{ github.event.inputs.version }}"; then echo "Tag already exists. Aborting the release process."; exit 1; fi
|
||||
|
||||
- run: ./scripts/set-versions.sh "${{ github.event.inputs.version }}"
|
||||
- run: ./scripts/build-release.sh
|
||||
- run: ./scripts/test-release.sh "${{ github.event.inputs.version }}"
|
||||
- name: Create tag
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
script: |
|
||||
github.rest.git.createRef({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
ref: "refs/tags/v${{ github.event.inputs.version }}",
|
||||
sha: context.sha
|
||||
})
|
||||
- run: mv planetiler-dist/target/*with-deps.jar planetiler.jar
|
||||
- run: sha256sum planetiler.jar > planetiler.jar.sha256
|
||||
- run: md5sum planetiler.jar > planetiler.jar.md5
|
||||
- name: Install GPG Private Key
|
||||
run: |
|
||||
echo -n "${{ secrets.OSSRH_GPG_SECRET_KEY }}" | base64 --decode | gpg --batch --import
|
||||
- name: Create Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
fail_on_unmatched_files: true
|
||||
tag_name: v${{ github.event.inputs.version }}
|
||||
draft: true
|
||||
files: |
|
||||
planetiler.jar*
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: ./scripts/push-release.sh ${{ github.event.inputs.version }}
|
||||
env:
|
||||
GITHUB_ACTOR: ${{ github.actor }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
IMAGE_TAGS: ${{ github.event.inputs.image_tags }}
|
||||
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
OSSRH_GPG_SECRET_KEY_PASSWORD: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
|
||||
- run: ./scripts/set-versions.sh "${{ github.event.inputs.version }}"
|
||||
- run: ./scripts/build-release.sh
|
||||
- run: ./scripts/test-release.sh "${{ github.event.inputs.version }}"
|
||||
- name: Create tag
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
script: |
|
||||
github.rest.git.createRef({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
ref: "refs/tags/v${{ github.event.inputs.version }}",
|
||||
sha: context.sha
|
||||
})
|
||||
- run: mv planetiler-dist/target/*with-deps.jar planetiler.jar
|
||||
- run: sha256sum planetiler.jar > planetiler.jar.sha256
|
||||
- run: md5sum planetiler.jar > planetiler.jar.md5
|
||||
- name: Install GPG Private Key
|
||||
run: |
|
||||
echo -n "${{ secrets.OSSRH_GPG_SECRET_KEY }}" | base64 --decode | gpg --batch --import
|
||||
- name: Create Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
fail_on_unmatched_files: true
|
||||
tag_name: v${{ github.event.inputs.version }}
|
||||
draft: true
|
||||
files: |
|
||||
planetiler.jar*
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: ./scripts/push-release.sh ${{ github.event.inputs.version }}
|
||||
env:
|
||||
GITHUB_ACTOR: ${{ github.actor }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
IMAGE_TAGS: ${{ github.event.inputs.image_tags }}
|
||||
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
OSSRH_GPG_SECRET_KEY_PASSWORD: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
|
||||
|
|
|
@ -21,37 +21,37 @@ jobs:
|
|||
contents: read
|
||||
packages: write
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
- name: Cache data/sources
|
||||
uses: ./.github/cache-sources-action
|
||||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
server-id: ossrh
|
||||
server-username: MAVEN_USERNAME
|
||||
server-password: MAVEN_PASSWORD
|
||||
- run: ./scripts/build-release.sh
|
||||
- run: ./scripts/test-release.sh
|
||||
- run: sha256sum planetiler-dist/target/*with-deps.jar
|
||||
- run: md5sum planetiler-dist/target/*with-deps.jar
|
||||
- name: 'Upload artifact'
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: planetiler-build
|
||||
path: planetiler-dist/target/*with-deps.jar
|
||||
- name: Install GPG Private Key
|
||||
run: |
|
||||
echo -n "${{ secrets.OSSRH_GPG_SECRET_KEY }}" | base64 --decode | gpg --batch --import
|
||||
- run: ./scripts/push-release.sh
|
||||
env:
|
||||
GITHUB_ACTOR: ${{ github.actor }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
IMAGE_TAGS: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.image_tags || 'latest,snapshot' }}
|
||||
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
OSSRH_GPG_SECRET_KEY_PASSWORD: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
- name: Cache data/sources
|
||||
uses: ./.github/cache-sources-action
|
||||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
server-id: ossrh
|
||||
server-username: MAVEN_USERNAME
|
||||
server-password: MAVEN_PASSWORD
|
||||
- run: ./scripts/build-release.sh
|
||||
- run: ./scripts/test-release.sh
|
||||
- run: sha256sum planetiler-dist/target/*with-deps.jar
|
||||
- run: md5sum planetiler-dist/target/*with-deps.jar
|
||||
- name: 'Upload artifact'
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: planetiler-build
|
||||
path: planetiler-dist/target/*with-deps.jar
|
||||
- name: Install GPG Private Key
|
||||
run: |
|
||||
echo -n "${{ secrets.OSSRH_GPG_SECRET_KEY }}" | base64 --decode | gpg --batch --import
|
||||
- run: ./scripts/push-release.sh
|
||||
env:
|
||||
GITHUB_ACTOR: ${{ github.actor }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
IMAGE_TAGS: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.image_tags || 'latest,snapshot' }}
|
||||
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
OSSRH_GPG_SECRET_KEY_PASSWORD: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
|
||||
|
|
|
@ -15,66 +15,66 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 15
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
# Disabling shallow clone is recommended for improving relevancy of reporting
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
- name: Cache SonarCloud packages
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/.sonar/cache
|
||||
key: ${{ runner.os }}-sonar
|
||||
restore-keys: ${{ runner.os }}-sonar
|
||||
- name: Analyze with SonarCloud
|
||||
run: |
|
||||
mvn -Dspotless.check.skip -Pcoverage -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
|
||||
env:
|
||||
# Needed to get some information about the pull request, if any
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
# Read-only user, use this token to link SonarLint to SonarCloud as well
|
||||
SONAR_TOKEN: c2cfe8bd7368ced07e84a620b7c2487846e220eb
|
||||
- name: Wait for SonarCloud API to update...
|
||||
run: "sleep 10"
|
||||
- name: Upload annotations on PRs
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
script: |
|
||||
const pr = context.payload.pull_request.number;
|
||||
const url = `https://sonarcloud.io/api/issues/search?pullRequest=${pr}&s=FILE_LINE&resolved=false&sinceLeakPeriod=true&ps=100&facets=severities%2Ctypes&componentKeys=onthegomap_planetiler&organization=onthegomap&additionalFields=_all`;
|
||||
console.log("Fetching " + url);
|
||||
const response = await github.request(url);
|
||||
console.log("Got " + JSON.stringify(response.data));
|
||||
response.data.issues.forEach(issue => {
|
||||
try {
|
||||
if (issue.severity === 'INFO') return;
|
||||
const textRange = issue.textRange;
|
||||
const rule = encodeURIComponent(issue.rule);
|
||||
const message = [
|
||||
issue.message,
|
||||
'',
|
||||
`rule: ${issue.rule} (https://sonarcloud.io/organizations/onthegomap/rules?open=${rule}&rule_key=${rule})`,
|
||||
`issue url: https://sonarcloud.io/project/issues?pullRequest=${pr}&open=${encodeURIComponent(issue.key)}&id=onthegomap_planetiler`
|
||||
].join('\n');
|
||||
const args = {
|
||||
title: `${issue.severity} ${issue.type}`,
|
||||
file: issue.component.replace(/^[^:]*:/, ''),
|
||||
startLine: textRange.startLine,
|
||||
endLine: textRange.endLine,
|
||||
startColumn: textRange.startOffset,
|
||||
endColumn: textRange.endOffset
|
||||
};
|
||||
core.warning(message, args);
|
||||
console.log(args);
|
||||
} catch (e) {
|
||||
core.error(`Unable to parse sonar issue: ${JSON.stringify(issue)}`);
|
||||
}
|
||||
});
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
# Disabling shallow clone is recommended for improving relevancy of reporting
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
- name: Set up JDK 21
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 21
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
- name: Cache SonarCloud packages
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/.sonar/cache
|
||||
key: ${{ runner.os }}-sonar
|
||||
restore-keys: ${{ runner.os }}-sonar
|
||||
- name: Analyze with SonarCloud
|
||||
run: |
|
||||
mvn -Dspotless.check.skip -Pcoverage -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
|
||||
env:
|
||||
# Needed to get some information about the pull request, if any
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
# Read-only user, use this token to link SonarLint to SonarCloud as well
|
||||
SONAR_TOKEN: c2cfe8bd7368ced07e84a620b7c2487846e220eb
|
||||
- name: Wait for SonarCloud API to update...
|
||||
run: "sleep 10"
|
||||
- name: Upload annotations on PRs
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
script: |
|
||||
const pr = context.payload.pull_request.number;
|
||||
const url = `https://sonarcloud.io/api/issues/search?pullRequest=${pr}&s=FILE_LINE&resolved=false&sinceLeakPeriod=true&ps=100&facets=severities%2Ctypes&componentKeys=onthegomap_planetiler&organization=onthegomap&additionalFields=_all`;
|
||||
console.log("Fetching " + url);
|
||||
const response = await github.request(url);
|
||||
console.log("Got " + JSON.stringify(response.data));
|
||||
response.data.issues.forEach(issue => {
|
||||
try {
|
||||
if (issue.severity === 'INFO') return;
|
||||
const textRange = issue.textRange;
|
||||
const rule = encodeURIComponent(issue.rule);
|
||||
const message = [
|
||||
issue.message,
|
||||
'',
|
||||
`rule: ${issue.rule} (https://sonarcloud.io/organizations/onthegomap/rules?open=${rule}&rule_key=${rule})`,
|
||||
`issue url: https://sonarcloud.io/project/issues?pullRequest=${pr}&open=${encodeURIComponent(issue.key)}&id=onthegomap_planetiler`
|
||||
].join('\n');
|
||||
const args = {
|
||||
title: `${issue.severity} ${issue.type}`,
|
||||
file: issue.component.replace(/^[^:]*:/, ''),
|
||||
startLine: textRange.startLine,
|
||||
endLine: textRange.endLine,
|
||||
startColumn: textRange.startOffset,
|
||||
endColumn: textRange.endOffset
|
||||
};
|
||||
core.warning(message, args);
|
||||
console.log(args);
|
||||
} catch (e) {
|
||||
core.error(`Unable to parse sonar issue: ${JSON.stringify(issue)}`);
|
||||
}
|
||||
});
|
||||
|
|
Ładowanie…
Reference in New Issue