Skip to content
Open
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
19 changes: 19 additions & 0 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Workflows

### Maven Tests
- Definition
- run `mvn clean install`
- Trigger
- on pull request / push to branch

### Maven Release
- Definition
- run `mvn clean install`
- run `mvn release:prepare`
- run `mvn release:perform`
- push the release on gcs ua-ops-artifacts/airship-maven-artifacts
- Trigger
- on merge to Main/Master
- workflow_dispatch (manual trigger)

📖 For full documentation on how these workflows and configuration files work, please refer to the [urbanairship/java-env repository](https://github.com/urbanairship/java-env#github-actions-and-workflows).
30 changes: 30 additions & 0 deletions .github/workflows/maven-release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Perform Maven Release

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: false

on:
push:
branches:
- master
paths:
- 'pom.xml'
- '**/src/**'
- '**/pom.xml'
workflow_dispatch:

jobs:
maven-release:
name: Maven Release
runs-on: [ self-hosted, ubuntu ]

steps:
- id: release
uses: urbanairship/java-env/actions/airship-maven-release@master
with:
dry-run: false
java-build-sa-key: ${{ secrets.JAVA_BUILD_SA_KEY }}
gh-token: ${{ secrets.JAVA_BUILD_GH_TOKEN }}
additionalCommentPrefix: "[skip ci]"
additionalBuildArgs: "-Dgpg.passphrase=${{ secrets.MAVEN_GPG_PASSPHRASE }} -Dlocal.gpg.passphrase=${{ secrets.MAVEN_GPG_PASSPHRASE }}"
27 changes: 27 additions & 0 deletions .github/workflows/maven-tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Maven Tests

run-name: Maven Tests on branch ${{ github.ref_name }}

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

on:
pull_request:
branches:
- master
workflow_dispatch:

jobs:
build:
runs-on: [self-hosted, ubuntu]
steps:
- name: Set up Airship Java Environment
uses: urbanairship/java-env/actions/setup-airship-java-env@master
with:
java-build-sa-key: ${{ secrets.JAVA_BUILD_SA_KEY }}
gh-token: ${{ secrets.JAVA_BUILD_GH_TOKEN }}

- name: Build with Maven
shell: bash
run: mvn clean install -e -T 1C ${{ env.MAVEN_EXTRA_FLAGS }}
16 changes: 16 additions & 0 deletions config.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# ==========================================================
# PIPELINE CONFIGURATION (GitHub Actions / Local)
# ==========================================================
# This file is used by the CI/CD pipelines to set up the
# Java and Maven build environment, as well as Docker builds.
# ==========================================================

[build]
# Java build version (required, default is 8)
java_build_version = 11

# Maven version (required, default is 3.9.9)
maven_version = 3.9.9

# Additional flags for maven (optional, e.g., -ntp -B -DskipTests)
maven_extra_flags =
Loading