diff --git a/.github/workflows/release-github.yml b/.github/workflows/release-github.yml new file mode 100644 index 0000000..399c09c --- /dev/null +++ b/.github/workflows/release-github.yml @@ -0,0 +1,43 @@ +name: Deploy to github +on: + workflow_dispatch: + +jobs: + build: + name: release + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 5 + + - name: Setup Java + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '8' + server-id: central + server-username: ${{ secrets.GITHUB_USERNAME }} + server-password: MAVEN_CENTRAL_TOKEN + gpg-private-key: ${{ secrets.OSSRH_GPG_SECRET_KEY }} + gpg-passphrase: MAVEN_GPG_PASSPHRASE + + - name: Setup LXD + uses: canonical/setup-lxd@main + with: + channel: 5.21/candidate + + - name: Install rockcraft + run: | + sudo snap install rockcraft --classic + + - name: Publish to Github Packages + id: deploy + run: | + ./gradlew publish + shell: bash + env: + GITHUB_USERNAME: ${{ secrets.GITHUB_USERNAME }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_REPO: $${ secrets.GITHUB_REPO }} diff --git a/build.gradle.kts b/build.gradle.kts index 0191165..6c242a9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,19 @@ allprojects { version = "0.2.1" group = "io.github.rockcrafters" + apply(plugin = "maven-publish") + plugins.withType().configureEach { + extensions.configure() { + repositories { + maven { + name = "GitHubPackages" + url = uri(System.getenv("GITHUB_REPO") ?: "") + credentials { + username = project.findProperty("gpr.user") as String? ?: System.getenv("GITHUB_USERNAME") + password = project.findProperty("gpr.key") as String? ?: System.getenv("GITHUB_TOKEN") + } + } + } + } + } }