From 90ba8afde8407427f4324164bb0a0cd3af11d86d Mon Sep 17 00:00:00 2001 From: Pawel Lipski Date: Wed, 30 Aug 2023 14:13:31 +0200 Subject: [PATCH] Implement automigration from ASH to PSH in CI --- .github/workflows/standard-workflow.yml | 39 ++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/.github/workflows/standard-workflow.yml b/.github/workflows/standard-workflow.yml index 0c5ddb33..9862a7fc 100644 --- a/.github/workflows/standard-workflow.yml +++ b/.github/workflows/standard-workflow.yml @@ -134,10 +134,47 @@ jobs: run: sbt test working-directory: examples/akka-persistence-app + # + open-pr-to-ash: + if: github.event_name != 'pull_request' + needs: [code-style-check, test-212, test-213-1, test-213-2, test-sbt-plugin, run-examples] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + # Fetch all history so that a push to pekko-serialization-helper succeeds. + # See https://stackoverflow.com/q/76470864 + fetch-depth: 0 + - uses: coursier/cache-action@v6 + - uses: coursier/setup-action@v1 + - run: git status + - run: git checkout -b chore/from-ash + - run: curl -sL https://raw.githubusercontent.com/ap/rename/master/rename | sudo tee /usr/local/bin/rename + - run: sudo chmod +x /usr/local/bin/rename + - run: ./scripts/akka-to-pekko + - run: git add . + - run: git config user.email "psh@virtuslab.com" + - run: git config user.name "Pekko Serialization Helper Bot" + - run: git commit -m 'Migrate commit from ASH' + - run: git clean -dxf + - run: ./scripts/format-code + - run: git commit -a --amend --no-edit + - env: + # 2.1 Generate an SSH key in terminal (Leave the passphrase empty) + # 2.2 Add public key in the external repository: /Settings/Deploy keys/Add deploy key + # Paste the public key. Enable "Allow write access" + # 2.3 Add private key in the source repository: /Settings/Secrets/Actions/New repository secret + # Paste the private key. + PSH_SSH_PRIVATE_KEY: ${{ secrets.PSH_SSH_PRIVATE_KEY }} + run: mkdir -p ~/.ssh/ && echo "$PSH_SSH_PRIVATE_KEY" > ~/.ssh/psh && chmod 400 ~/.ssh/psh + - run: git config --add --local core.sshCommand 'ssh -i ~/.ssh/psh' + - run: git push --force git@github.com:VirtusLab/pekko-serialization-helper.git main + # + publish-maven-artifacts: needs: [code-style-check, test-212, test-213-1, test-213-2, test-sbt-plugin, run-examples] if: github.event_name != 'pull_request' - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: coursier/cache-action@v6