name: Java CI on: [push] jobs: build-and-deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Checkout submodules # See https://github.com/actions/checkout#Checkout-submodules shell: bash run: | auth_header="$(git config --local --get http.https://github.com/.extraheader)" git submodule sync --recursive git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1 - name: Set up JDK 11 uses: actions/setup-java@v1 with: java-version: 11 - name: Cache Maven Dependencies uses: actions/cache@v2.1.1 with: path: ~/.m2/repository key: mograsim-maven-${{ hashFiles('**/pom.xml', '**/MANIFEST.MF', '.github/workflows/maven.yml') }} restore-keys: | mograsim-maven- - name: Build with Maven run: mvn --batch-mode --errors --fail-at-end --show-version clean verify --file pom.xml - name: Deploy to mograsim.net env: DEPLOY_KEY: ${{secrets.DEPLOY_KEY}} MOGRASIM_NET_HOST_PUBKEY: ${{secrets.MOGRASIM_NET_HOST_PUBKEY }} REF: ${{github.ref}} run: | mkdir -p ~/.ssh touch ~/.ssh/id_rsa_deploy chmod 600 ~/.ssh/id_rsa_deploy printenv DEPLOY_KEY > ~/.ssh/id_rsa_deploy printenv MOGRASIM_NET_HOST_PUBKEY >> ~/.ssh/known_hosts date=$(date +%Y%m%d_%H%M%S) scp -i ~/.ssh/id_rsa_deploy -r releng/net.mograsim.plugin.updatesite/target/repository mgsdeploy@mograsim.net:/mograsim/upload_tmp/$date ssh -i ~/.ssh/id_rsa_deploy /mograsim/upload_updatesite_finished.sh $date $REF