Nightly Tests #98
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Nightly Tests" | |
env: | |
CACHE_NAME: marlowe-temp | |
ALLOWED_URIS: "https://github.com https://api.github.com" | |
TRUSTED_PUBLIC_KEYS: "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= marlowe-temp.cachix.org-1:1gPjVFpu4QjaAT3tRurCioX+BC23V7mjvFwpP5bV0Ec= loony-tools:pr9m4BkM/5/eSTZlkQyRt57Jz7OMBxNSUiMC4FkcNfk=" | |
SUBSTITUTERS: "https://cache.nixos.org/ https://cache.iog.io https://marlowe-temp.cachix.org https://cache.zw3rk.com/" | |
on: | |
schedule: | |
# Run at 00:00 UTC every day | |
- cron: 0 0 * * * | |
# Allow running manually | |
workflow_dispatch: | |
jobs: | |
check-deploy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check deploy | |
run: | | |
CURRENT_DEPLOY=$(curl -L \ | |
-H "Accept: application/vnd.github+json" \ | |
-H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ | |
-H "X-GitHub-Api-Version: 2022-11-28" \ | |
https://api.github.com/repos/input-output-hk/marlowe-cardano/actions/workflows/deploy.yml/runs\?per_page\=1\&branch\=main\&status\=success | jq --raw-output '.workflow_runs[0].head_sha') | |
if [ $CURRENT_DEPLOY != $GITHUB_SHA ]; | |
then | |
echo "Unable to run nightly tests on $GITHUB_SHA, currently deployed commit is $CURRENT_DEPLOY" | |
exit 1 | |
fi | |
marlowe-finder: | |
runs-on: ubuntu-latest | |
needs: [check-deploy] | |
env: | |
ENVIRONMENT: preprod | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Nix | |
uses: cachix/install-nix-action@v21 | |
with: | |
nix_path: nixpkgs=channel:nixos-unstable | |
install_url: https://releases.nixos.org/nix/nix-2.10.3/install | |
extra_nix_config: | | |
allowed-uris = ${{ env.ALLOWED_URIS }} | |
trusted-public-keys = ${{ env.TRUSTED_PUBLIC_KEYS }} | |
substituters = ${{ env.SUBSTITUTERS }} | |
experimental-features = nix-command flakes | |
- name: Setup Cachix | |
uses: cachix/cachix-action@v12 | |
with: | |
name: ${{ env.CACHE_NAME }} | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: Build Marlowe Finder | |
run: | | |
nix build .#ghc8107-marlowe-apps-exe-marlowe-finder | |
- name: Install SSH keys | |
uses: shimataro/ssh-key-action@v2 | |
with: | |
key: ${{ secrets.SSH_KEY }} | |
known_hosts: ${{ secrets.KNOWN_HOSTS }} | |
- name: Run Marlowe Finder on Preprod | |
run: | | |
scripts/setup-dev-connection & | |
while ! nc -zv 127.0.0.1 3700 > /dev/null 2>&1 | |
do | |
: | |
done | |
result/bin/marlowe-finder --end-at-tip | |
marlowe-scaling: | |
runs-on: ubuntu-latest | |
needs: [check-deploy] | |
env: | |
ENVIRONMENT: preview | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Nix | |
uses: cachix/install-nix-action@v21 | |
with: | |
nix_path: nixpkgs=channel:nixos-unstable | |
install_url: https://releases.nixos.org/nix/nix-2.10.3/install | |
extra_nix_config: | | |
allowed-uris = ${{ env.ALLOWED_URIS }} | |
trusted-public-keys = ${{ env.TRUSTED_PUBLIC_KEYS }} | |
substituters = ${{ env.SUBSTITUTERS }} | |
experimental-features = nix-command flakes | |
- name: Setup Cachix | |
uses: cachix/cachix-action@v12 | |
with: | |
name: ${{ env.CACHE_NAME }} | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: Build Marlowe Scaling | |
run: | | |
nix build .#ghc8107-marlowe-apps-exe-marlowe-scaling | |
- name: Install SSH keys | |
uses: shimataro/ssh-key-action@v2 | |
with: | |
key: ${{ secrets.SSH_KEY }} | |
known_hosts: ${{ secrets.KNOWN_HOSTS }} | |
- name: Copy Signing Keys | |
env: | |
TEST_WALLET_SIGNING_KEYS: ${{ secrets.TEST_WALLET_SIGNING_KEYS }} | |
run: | | |
i=0 | |
while IFS= read -r key | |
do | |
echo $key | jq . > test-wallets/test.$i.skey | |
i=$((i+1)) | |
done < <(printf '%s\n' "$TEST_WALLET_SIGNING_KEYS") | |
- name: Run Marlowe Scaling on Preview | |
run: | | |
scripts/setup-dev-connection & | |
while ! nc -zv 127.0.0.1 3700 > /dev/null 2>&1 | |
do | |
: | |
done | |
result/bin/marlowe-scaling 2 \ | |
"$(cat test-wallets/test.0.addr)=test-wallets/test.0.skey" \ | |
"$(cat test-wallets/test.1.addr)=test-wallets/test.1.skey" \ | |
"$(cat test-wallets/test.2.addr)=test-wallets/test.2.skey" \ | |
"$(cat test-wallets/test.3.addr)=test-wallets/test.3.skey" \ | |
"$(cat test-wallets/test.4.addr)=test-wallets/test.4.skey" \ | |
"$(cat test-wallets/test.5.addr)=test-wallets/test.5.skey" \ | |
"$(cat test-wallets/test.6.addr)=test-wallets/test.6.skey" \ | |
"$(cat test-wallets/test.7.addr)=test-wallets/test.7.skey" \ | |
"$(cat test-wallets/test.8.addr)=test-wallets/test.8.skey" \ | |
"$(cat test-wallets/test.9.addr)=test-wallets/test.9.skey" \ | |
"$(cat test-wallets/test.10.addr)=test-wallets/test.10.skey" \ | |
"$(cat test-wallets/test.11.addr)=test-wallets/test.11.skey" \ | |
"$(cat test-wallets/test.12.addr)=test-wallets/test.12.skey" \ | |
"$(cat test-wallets/test.13.addr)=test-wallets/test.13.skey" \ | |
"$(cat test-wallets/test.14.addr)=test-wallets/test.14.skey" \ | |
"$(cat test-wallets/test.15.addr)=test-wallets/test.15.skey" \ | |
"$(cat test-wallets/test.16.addr)=test-wallets/test.16.skey" \ | |
"$(cat test-wallets/test.17.addr)=test-wallets/test.17.skey" \ | |
"$(cat test-wallets/test.18.addr)=test-wallets/test.18.skey" \ | |
"$(cat test-wallets/test.19.addr)=test-wallets/test.19.skey" |