Skip to content

Commit

Permalink
CI: move from Travis to Github Actions
Browse files Browse the repository at this point in the history
  • Loading branch information
oliverlockwood committed Jan 5, 2024
1 parent 97449c6 commit e7b94fd
Show file tree
Hide file tree
Showing 4 changed files with 89 additions and 2 deletions.
File renamed without changes.
36 changes: 36 additions & 0 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: 'CI Build'

on:
workflow_dispatch:
push:
branches:
- master
pull_request:
types: [ opened, reopened, edited ]
branches:
- master

concurrency:
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
cancel-in-progress: false

jobs:
compile-and-test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Java and Maven
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '8'
cache: 'maven'
cache-dependency-path: 'vfs-azure/pom.xml'

- name: Compile
run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V

- name: Run tests
run: mvn test -B
44 changes: 44 additions & 0 deletions .github/workflows/ci-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: 'CI Publish to Maven Central'

on:
workflow_dispatch:
push:
tags:
- 'release/*'

concurrency:
group: '${{ github.workflow }} @ ${{ github.head_ref || github.ref }}'
cancel-in-progress: false

jobs:
compile-test-and-publish-to-maven-central:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Java and Maven
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '8'
cache: 'maven'
cache-dependency-path: 'vfs-azure/pom.xml'

- name: Compile
run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V

- name: Run tests
run: mvn test -B

- name: Copy publishing-config settings.xml into place
run: cp .ci.settings.xml $HOME/.m2/settings.xml

- name: Publish to Maven Central
run: ./publish.sh
env:
SONATYPE_GPGKEY_FILE_ENCRYPTION_KEY: ${{ secrets.SONATYPE_GPGKEY_FILE_ENCRYPTION_KEY }}
SONATYPE_GPGKEY_FILE_ENCRYPTION_IV: ${{ secrets.SONATYPE_GPGKEY_FILE_ENCRYPTION_IV }}
SONATYPE_GPGKEY_PASSPHRASE: ${{ secrets.SONATYPE_GPGKEY_PASSPHRASE }}
SONATYPE_USERNAME: ${{ vars.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
11 changes: 9 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[![CI Build](https://github.com/dalet-oss/vfs-gcs/actions/workflows/ci-build.yml/badge.svg)](https://github.com/dalet-oss/vfs-gcs/actions/workflows/ci-build.yml) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.dalet-oss/vfs-gcs/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.github.dalet-oss/vfs-gcs) [![Licence](https://img.shields.io/hexpm/l/plug.svg)](https://github.com/dalet-oss/vfs-gcs/blob/master/LICENSE)
---

# vfs-gcs
Google Cloud Storage provider for Apache Commons VFS - http://commons.apache.org/proper/commons-vfs/

Expand All @@ -11,8 +14,12 @@ and occasionally offer our changes upstream.

## Builds, releases etc.

This project is built using Travis CI.
[![Build Status](https://app.travis-ci.com/dalet-oss/vfs-gcs.svg?branch=master)](https://app.travis-ci.com/dalet-oss/vfs-gcs)
This project is built using Github Actions.

- All pushes to the `master` branch trigger the [![CI Build](https://github.com/dalet-oss/vfs-gcs/actions/workflows/ci-build.yml/badge.svg)](https://github.com/dalet-oss/vfs-gcs/actions/workflows/ci-build.yml)
workflow.
- All pushes of Git tags matching `release/*` trigger the [![CI Publish to Maven Central](https://github.com/dalet-oss/vfs-gcs/actions/workflows/ci-publish.yml/badge.svg?branch=master&event=push)](https://github.com/dalet-oss/vfs-gcs/actions/workflows/ci-publish.yml)
workflow.

Published artifacts are available on Maven Central as `com.github.dalet-oss:vfs-gcs`.

Expand Down

0 comments on commit e7b94fd

Please sign in to comment.