Skip to content

Commit 395495a

Browse files
author
Andrey Voloshin
committed
Braces
1 parent 92182eb commit 395495a

File tree

5 files changed

+57
-41
lines changed

5 files changed

+57
-41
lines changed

.buildkite/pipeline.yml

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ steps:
44
- ".buildkite/steps/build-image.sh"
55
- ".buildkite/steps/upload-image.sh"
66

7+
78
- label: ":terraform: build infrastructure"
89
key: "create_infrastructure"
910
if: &main_if |
@@ -15,8 +16,10 @@ steps:
1516
command:
1617
- ".buildkite/steps/full_test_suite/terraform-build.sh"
1718

19+
1820
- wait
1921

22+
2023
- label: ":cop::skin-tone-2: deploy check"
2124
command: ".buildkite/steps/deploy-test.sh"
2225
timeout: 90
@@ -36,25 +39,7 @@ steps:
3639
key: "full_test_suite"
3740
if: *main_if
3841
commands:
39-
- PROXY_ADDR=`buildkite-agent meta-data get 'PROXY_IP'`
40-
- SOLANA_ADDR=`buildkite-agent meta-data get 'SOLANA_IP'`
41-
- export PROXY_URL="http://$$PROXY_ADDR:9091/solana"
42-
- export FAUCET_URL="http://$$PROXY_ADDR:3334/request_neon"
43-
- export SOLANA_URL="http://$$SOLANA_ADDR:8899"
44-
- echo $$PROXY_URL
45-
- echo $$FAUCET_URL
46-
- echo $$SOLANA_URL
47-
- echo Full test suite container name - $${FTS_CONTAINER_NAME}
48-
- docker-compose -f docker-compose/docker-compose-full-test-suite.yml pull
49-
- docker-compose -f docker-compose/docker-compose-full-test-suite.yml up
50-
- FTS_RESULT=$(docker logs $${FTS_CONTAINER_NAME} | (grep -oP "(?<=Passing - )\d+" || echo 0))
51-
- docker cp $${FTS_CONTAINER_NAME}:/opt/allure-reports.tar.gz ./
52-
- docker logs $${FTS_CONTAINER_NAME} > ./$${FTS_CONTAINER_NAME}.log
53-
- docker-compose -f docker-compose/docker-compose-full-test-suite.yml rm -f
54-
- echo Full test passing - $${FTS_RESULT}
55-
- echo Full test threshold - $${FTS_THRESHOLD}
56-
- echo Check if $${FTS_RESULT} is greater or equeal $${FTS_THRESHOLD}
57-
- test $${FTS_RESULT} -ge $${FTS_THRESHOLD}
42+
- ".buildkite/steps/full_test_suite/run_full_test_suite.sh"
5843
env:
5944
FTS_THRESHOLD: 1700
6045
FTS_CONTAINER_NAME: fts_${BUILDKITE_BUILD_NUMBER}
@@ -73,14 +58,17 @@ steps:
7358
- allure-reports.tar.gz
7459
- fts_${BUILDKITE_BUILD_NUMBER}.log
7560

61+
7662
- wait
7763

64+
7865
- label: ":floppy_disk: publish image"
7966
command: ".buildkite/steps/publish-image.sh"
8067
if: |
8168
build.branch =~ /^(master|develop|^ci-.+|v[0-9]+\.[0-9]+\..+)$$/ &&
8269
(build.env("NEON_EVM_BRANCH") == "develop" || build.env("NEON_EVM_BRANCH") == null)
8370
71+
8472
- label: ":terraform: destroy infrastructure"
8573
agents:
8674
queue: "testing"

.buildkite/steps/full_test_suite/proxy_init.sh

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,21 +34,21 @@ services:
3434
evm_loader:
3535
container_name: evm_loader
3636
environment:
37-
- SOLANA_URL=$SOLANA_URL
37+
- SOLANA_URL=${SOLANA_URL}
3838
networks:
3939
- net
4040
command: bash -c "create-test-accounts.sh 1 && deploy-evm.sh && /opt/spl-token create-account HPsV9Deocecw3GeZv1FkAPNCBRfuVyfw9MMwjwRe1xaU && /opt/spl-token mint HPsV9Deocecw3GeZv1FkAPNCBRfuVyfw9MMwjwRe1xaU 1000000000 --owner /opt/evm_loader-keypair.json -- HX14J4Pp9CgSbWP13Dtpm8VLJpNxMYffLtRCRGsx7Edv"
4141
proxy:
4242
environment:
43-
- SOLANA_URL=$SOLANA_URL
43+
- SOLANA_URL=${SOLANA_URL}
4444
ports:
4545
- 9091:9090
4646
faucet:
4747
image: neonlabsorg/faucet:latest
4848
environment:
4949
- FAUCET_RPC_BIND=0.0.0.0
5050
- FAUCET_RPC_PORT=3333
51-
- SOLANA_URL=$SOLANA_URL
51+
- SOLANA_URL=${SOLANA_URL}
5252
- NEON_ETH_MAX_AMOUNT=50000
5353
- EVM_LOADER=53DfF883gyixYNXnM7s5xhdeyV8mVk9T4i2hGV9vG9io
5454
- NEON_TOKEN_MINT=HPsV9Deocecw3GeZv1FkAPNCBRfuVyfw9MMwjwRe1xaU
@@ -63,10 +63,10 @@ services:
6363
entrypoint: /opt/faucet/faucet --config /opt/proxy/faucet.conf run
6464
airdropper:
6565
environment:
66-
- SOLANA_URL=$SOLANA_URL
66+
- SOLANA_URL=${SOLANA_URL}
6767
indexer:
6868
environment:
69-
- SOLANA_URL=$SOLANA_URL
69+
- SOLANA_URL=${SOLANA_URL}
7070
EOF
7171

7272

@@ -75,14 +75,12 @@ SERVICES=$(docker-compose -f docker-compose-test.yml config --services | grep -v
7575

7676

7777
# Check if Solana is available, max attepts is 100(each for 2 seconds)
78-
CHECK_COMMAND=`curl $SOLANA_URL -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getHealth"}'`
78+
CHECK_COMMAND=`curl ${SOLANA_URL} -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getHealth"}'`
7979
MAX_COUNT=100
8080
CURRENT_ATTEMPT=1
81-
while [[ "$CHECK_COMMAND" != "{\"jsonrpc\":\"2.0\",\"result\":\"ok\",\"id\":1}" && $CURRENT_ATTEMPT -gt $MAX_COUNT ]]
81+
while [[ "$CHECK_COMMAND" != "{\"jsonrpc\":\"2.0\",\"result\":\"ok\",\"id\":1}" && ${CURRENT_ATTEMPT} -gt ${MAX_COUNT} ]]
8282
do
8383
CHECK_COMMAND=`curl $SOLANA_URL -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getHealth"}'`
84-
echo $CHECK_COMMAND >> /tmp/output.txt
85-
echo "attempt: $CURRENT_ATTEMPT"
8684
((CURRENT_ATTEMPT=CURRENT_ATTEMPT+1))
8785
sleep 2
8886
done;
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#!/bin/bash
2+
3+
# External addresses from previous step
4+
PROXY_ADDR=`buildkite-agent meta-data get 'PROXY_IP'`
5+
SOLANA_ADDR=`buildkite-agent meta-data get 'SOLANA_IP'`
6+
7+
# Create envirinment variables for tests
8+
export PROXY_URL="http://${PROXY_ADDR}:9091/solana"
9+
export FAUCET_URL="http://${PROXY_ADDR}:3334/request_neon"
10+
export SOLANA_URL="http://${SOLANA_ADDR}:8899"
11+
12+
# Check variables
13+
echo "External URL for proxy service: ${PROXY_URL}"
14+
echo "External URL for faucet: ${FAUCET_URL}"
15+
echo "External URL for solana: ${SOLANA_URL}"
16+
17+
# Start tests
18+
echo Full test suite container name - ${FTS_CONTAINER_NAME}
19+
docker-compose -f docker-compose/docker-compose-full-test-suite.yml pull
20+
docker-compose -f docker-compose/docker-compose-full-test-suite.yml up
21+
FTS_RESULT=$(docker logs ${FTS_CONTAINER_NAME} | (grep -oP "(?<=Passing - )\d+" || echo 0))
22+
# Retreive logs
23+
docker cp ${FTS_CONTAINER_NAME}:/opt/allure-reports.tar.gz ./
24+
docker logs ${FTS_CONTAINER_NAME} > ./${FTS_CONTAINER_NAME}.log
25+
# Clean resources
26+
docker-compose -f docker-compose/docker-compose-full-test-suite.yml rm -f
27+
28+
# Results
29+
echo Full test passing - ${FTS_RESULT}
30+
echo Full test threshold - ${FTS_THRESHOLD}
31+
echo Check if ${FTS_RESULT} is greater or equeal ${FTS_THRESHOLD}
32+
test ${FTS_RESULT} -ge ${FTS_THRESHOLD}

.buildkite/steps/full_test_suite/terraform-build.sh

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
#!/bin/bash
2+
set -euo pipefail
23

34
cd .buildkite/steps/full_test_suite
45

56

67
# Terraform part
7-
export TF_VAR_branch=$BUILDKITE_BRANCH
8+
export TF_VAR_branch=${BUILDKITE_BRANCH}
89
export TFSTATE_BUCKET="nl-ci-stands"
910
export TFSTATE_KEY="tests/test-$BUILDKITE_COMMIT"
1011
export TFSTATE_REGION="us-east-2"
@@ -23,7 +24,3 @@ terraform output --json | jq -r '.solana_ip.value' | buildkite-agent meta-data s
2324
# Save IPs for next steps
2425
buildkite-agent meta-data get "PROXY_IP"
2526
buildkite-agent meta-data get "SOLANA_IP"
26-
27-
28-
# Create flag
29-
buildkite-agent meta-data set "INFRASTRUCTURE_CREATED" "YES"

.buildkite/steps/full_test_suite/terraform-destroy.sh

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,44 @@
11
#!/bin/bash
2+
set -euo pipefail
23

34
cd .buildkite/steps/full_test_suite
45

56

67
### Receive artefacts
78
export SSH_KEY="~/.ssh/ci-stands"
89
export ARTIFACTS_LOGS="./logs"
9-
mkdir -p $ARTIFACTS_LOGS
10+
mkdir -p ${ARTIFACTS_LOGS}
1011

1112

1213
# solana
1314
export REMOTE_HOST=`buildkite-agent meta-data get "SOLANA_IP"`
1415
ssh-keyscan -H $REMOTE_HOST >> ~/.ssh/known_hosts
15-
ssh -i $SSH_KEY ubuntu@$REMOTE_HOST 'sudo docker logs solana > /tmp/solana.log 2>&1'
16-
scp -i $SSH_KEY ubuntu@$REMOTE_HOST:/tmp/solana.log $ARTIFACTS_LOGS
16+
ssh -i ${SSH_KEY} ubuntu@${REMOTE_HOST} 'sudo docker logs solana > /tmp/solana.log 2>&1'
17+
scp -i ${SSH_KEY} ubuntu@${REMOTE_HOST}:/tmp/solana.log $ARTIFACTS_LOGS
1718

1819

1920
# proxy
2021
export REMOTE_HOST=`buildkite-agent meta-data get "PROXY_IP"`
21-
ssh-keyscan -H $REMOTE_HOST >> ~/.ssh/known_hosts
22+
ssh-keyscan -H ${REMOTE_HOST} >> ~/.ssh/known_hosts
2223
declare -a services=("evm_loader" "postgres" "dbcreation" "indexer" "proxy" "faucet" "airdropper")
2324

2425
for service in "${services[@]}"
2526
do
2627
echo "$servce"
27-
ssh -i $SSH_KEY ubuntu@$REMOTE_HOST "sudo docker logs $service > /tmp/$service.log 2>&1"
28-
scp -i $SSH_KEY ubuntu@$REMOTE_HOST:/tmp/$service.log $ARTIFACTS_LOGS
28+
ssh -i ${SSH_KEY} ubuntu@${REMOTE_HOST} "sudo docker logs $service > /tmp/$service.log 2>&1"
29+
scp -i ${SSH_KEY} ubuntu@${REMOTE_HOST}:/tmp/${service}.log ${ARTIFACTS_LOGS}
2930
done
3031

3132

3233
### Clean infrastructure by terraform
33-
export TF_VAR_branch=$BUILDKITE_BRANCH
34+
export TF_VAR_branch=${BUILDKITE_BRANCH}
3435
export TFSTATE_BUCKET="nl-ci-stands"
3536
export TFSTATE_KEY="tests/test-$BUILDKITE_COMMIT"
3637
export TFSTATE_REGION="us-east-2"
3738
export TF_VAR_neon_evm_revision=latest
3839
export TF_VAR_proxy_model_revision=latest
3940
export TF_BACKEND_CONFIG="-backend-config="bucket=${TFSTATE_BUCKET}" -backend-config="key=${TFSTATE_KEY}" -backend-config="region=${TFSTATE_REGION}""
40-
terraform init $TF_BACKEND_CONFIG
41+
terraform init ${TF_BACKEND_CONFIG}
4142
terraform destroy --auto-approve=true
4243

4344

0 commit comments

Comments
 (0)