forked from kalepail/soroban-quest--pioneer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitpod.yml
100 lines (96 loc) · 3.31 KB
/
.gitpod.yml
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
89
90
91
92
93
94
95
96
97
98
99
100
# We specify that we'll pull in our cutom Docker setup from this file.
image:
file: .gitpod.Dockerfile
# These are the tasks that are run during the Gitpod setup. Each of the tasks
# included will open its own terminal window where it can run.
tasks:
- name: "Albedo Signer"
init: |
git remote add base https://github.com/tyvdh/soroban-quest.git
git fetch --all
git checkout base/main --theirs _client
git checkout base/main --theirs _squirtle
git reset HEAD -- .
cd _squirtle
npm run compile
command: |
cd _squirtle
npm run bin
cd ../_client
clear
npm run start
# This "Futurenet" task starts up a Stellar validator node and joins it to the
# futurenet for you.
- name: Futurenet
# During the "init" phase, docker will download the quickstart image.
init: |
docker pull stellar/quickstart:soroban-dev
# We enable a local JSON-RPC endpoint that will listen on port 8000.
command: |
docker run --rm -it \
--name stellar \
-p 8000:8000 \
stellar/quickstart:soroban-dev \
--futurenet \
--enable-soroban-rpc
# This "CLI - Futurenet" task opens a terminal for you to interact with the
# futurenet network.
- name: CLI - Futurenet
# We specify some required environment variables for use on the futurenet.
env:
# This might should be set by the user.
# This account must actually exist as a funded account on the futurenet.
SOROBAN_SECRET_KEY: SDUOO3L7CNFXNNWSRSUCEJDKY5CLBZRI23UF6ZNXD23W5NGKJWVMGR7O
SOROBAN_RPC_URL: "http://localhost:8000/soroban/rpc"
SOROBAN_NETWORK_PASSPHRASE: "Test SDF Future Network ; October 2022"
# To keep things tidy, we clear the terminal from the previous output.
command: |
clear
# This "CLI - Sandbox" task provides a place to run contracts in a local
# sandbox environment. We need to invoke `cargo fetch` several times /shrug.
- name: CLI - Sandbox
init: |
cargo clean
cargo fetch
make build
cargo test -p soroban-hello-world-contract
# We open the `README.md` file and then clear the terminal output.
command: |
gp open README.md
clear
# We can even specify which VS Code extensions should be installed in your
# Gitpod at startup. Wild!
vscode:
extensions:
- vadimcn.vscode-lldb
- rust-lang.rust-analyzer
# We have our Gitpod's "prebuild" continuously built so you can always have the
# freshest experience possible. I bet you can guess what most of these options
# do, so we won't dwell here.
github:
prebuilds:
master: true
branches: true
pullRequests: true
pullRequestsFromForks: true
addCheck: false
addComment: false
addBadge: true
# We have a couple ports open in your Gitpod workspace to facilitate the quest
# functionality we need.
ports:
# Your quickstart node has a Horizon API server and an RPC endpoint, both
# listening on port 8000. It's publicly accessible through the internet.
- name: Horizon + RPC endpoint
port: 8000
visibility: public
onOpen: ignore
# This port is open to facilitate interactions using our SQ cli.
- name: Stellar Quest
port: 3000
visibility: public
onOpen: ignore
# This port is open for "Something with cargo test I think"??
- port: 4226
visibility: private
onOpen: ignore