forked from MyFanss/MyFans
-
Notifications
You must be signed in to change notification settings - Fork 0
88 lines (77 loc) · 2.86 KB
/
Copy pathfuturenet-smoke.yml
File metadata and controls
88 lines (77 loc) · 2.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
name: Futurenet Smoke (manual)
# Manual-only: never runs on push/pull_request so it cannot block PR CI.
# Trigger via: Actions → "Futurenet Smoke (manual)" → Run workflow
on:
workflow_dispatch:
inputs:
stellar_cli:
description: "stellar-cli version (e.g. 25.2.0)"
required: false
default: "25.2.0"
# Prevent two smoke runs from racing on the same network identity.
concurrency:
group: futurenet-smoke
cancel-in-progress: false
jobs:
smoke:
name: Deploy & verify on Futurenet
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- name: Install system dependencies
run: |
sudo apt-get update -qq
sudo apt-get install -y libdbus-1-dev libudev-dev pkg-config
- name: Install Rust (stable)
uses: dtolnay/rust-toolchain@stable
with:
targets: wasm32-unknown-unknown,wasm32v1-none
- name: Rust cache
uses: Swatinem/rust-cache@v2
with:
workspaces: contract
prefix-key: futurenet-smoke
- name: Cache stellar CLI binary
id: stellar-cache
uses: actions/cache@v4
with:
path: ~/.cargo/bin/stellar
key: stellar-cli-${{ inputs.stellar_cli }}-${{ runner.os }}-v1
- name: Install Stellar CLI
if: steps.stellar-cache.outputs.cache-hit != 'true'
run: cargo install stellar-cli --locked --version ${{ inputs.stellar_cli }}
- name: Deploy and verify on Futurenet
id: deploy
run: |
./scripts/deploy.sh \
--network futurenet \
--source "ci-${{ github.run_id }}-${{ github.run_attempt }}" \
--out "./deployed-futurenet-smoke.json" \
--env-out "./.env.deployed-futurenet-smoke"
working-directory: contract
- name: Smoke summary
if: always()
run: |
echo "## Futurenet Smoke" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
if [[ "${{ steps.deploy.outcome }}" == "success" ]]; then
echo "✅ Deploy + post-deploy verification passed." >> $GITHUB_STEP_SUMMARY
if [[ -f contract/deployed-futurenet-smoke.json ]]; then
echo "" >> $GITHUB_STEP_SUMMARY
echo '```json' >> $GITHUB_STEP_SUMMARY
cat contract/deployed-futurenet-smoke.json >> $GITHUB_STEP_SUMMARY
echo '```' >> $GITHUB_STEP_SUMMARY
fi
else
echo "❌ Deploy step failed — check logs above." >> $GITHUB_STEP_SUMMARY
fi
- name: Upload deployment artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: futurenet-smoke-${{ github.run_id }}
path: |
contract/deployed-futurenet-smoke.json
contract/.env.deployed-futurenet-smoke
retention-days: 7