Compare commits

...
Author SHA1 Message Date
dboreham 18a7e59a8a Merge pull request #116 from cerc-io/dboreham/fix-imports
Fix imports
2023-01-11 21:57:26 -07:00
David Boreham 0a66b7e9d2 Fix odd import problem 2023-01-11 21:56:05 -07:00
David Boreham 7edfa1bb29 Add import-resources dependency 2023-01-11 21:01:48 -07:00
telackey 8e184f509d Add remote debugging support to fixturenet-geth. (#113)
* Add remote debugging support to fixturenet-geth.
2023-01-11 12:54:22 -06:00
dboreham 5697a39640 Merge pull request #112 from cerc-io/dboreham/version-command
Version command
2023-01-10 14:32:56 -07:00
dboreham df469786ca Add version to smoke test 2023-01-10 14:32:12 -07:00
dboreham d315941f21 Version command implemented 2023-01-10 14:23:59 -07:00
dboreham ae7a17cecd Make script file names consistent 2023-01-10 14:10:22 -07:00
dboreham 261b513d68 Initial implementation 2023-01-10 14:09:38 -07:00
dboreham 9278d09096 Merge pull request #111 from cerc-io/dboreham/simple-test
A simple test
2023-01-10 10:25:14 -07:00
dboreham b8b83768d8 Add trailing newline 2023-01-10 10:24:48 -07:00
dboreham ddd2ea2724 Add a simple smoke test and shiv build script 2023-01-10 10:24:04 -07:00
Zach 787a5228ea Merge pull request #107 from cerc-io/zramsay-patch-1
Update repository-list.txt (rebrand)
2023-01-10 10:18:31 -05:00
Zach 738aa1907b Update repository-list.txt 2023-01-09 20:03:09 -05:00
15 changed files with 98 additions and 14 deletions
+1 -1
View File
@@ -24,7 +24,7 @@ import os
from decouple import config
import subprocess
import click
import importlib
import importlib.resources
from pathlib import Path
from .util import include_exclude_check
+1 -1
View File
@@ -21,7 +21,7 @@
import os
from decouple import config
import click
import importlib
import importlib.resources
from python_on_whales import docker
from .util import include_exclude_check
@@ -14,6 +14,12 @@ services:
fixturenet-eth-geth-1:
hostname: fixturenet-eth-geth-1
cap_add:
- SYS_PTRACE
environment:
CERC_REMOTE_DEBUG: "true"
CERC_RUN_STATEDIFF: "detect"
CERC_STATEDIFF_DB_NODE_ID: 1
env_file:
- ../config/fixturenet-eth/fixturenet-eth.env
image: cerc/fixturenet-eth-geth:local
@@ -27,12 +33,10 @@ services:
- fixturenet-eth-bootnode-geth
ports:
- "8545"
- "40000"
fixturenet-eth-geth-2:
hostname: fixturenet-eth-geth-2
environment:
CERC_RUN_STATEDIFF: "detect"
CERC_STATEDIFF_DB_NODE_ID: 2
healthcheck:
test: ["CMD", "nc", "-v", "localhost", "8545"]
interval: 30s
@@ -1,8 +1,13 @@
FROM skylenet/ethereum-genesis-generator@sha256:210353ce7c898686bc5092f16c61220a76d357f51eff9c451e9ad1b9ad03d4d3 AS ethgen
# Using the same golang image as used to build geth: https://github.com/cerc-io/go-ethereum/blob/HEAD/Dockerfile
FROM golang:1.18-alpine as delve
RUN go install github.com/go-delve/delve/cmd/dlv@latest
FROM cerc/go-ethereum:local
RUN apk add --no-cache python3 python3-dev py3-pip curl wget jq build-base gettext libintl openssl bash bind-tools postgresql-client
COPY --from=delve /go/bin/dlv /
COPY --from=ethgen /usr/local/bin/eth2-testnet-genesis /usr/local/bin/eth2-testnet-genesis
COPY --from=ethgen /usr/local/bin/eth2-val-tools /usr/local/bin/eth2-val-tools
COPY --from=ethgen /apps /apps
@@ -9,13 +9,18 @@ cd /opt/testnet/build/el
python3 -m http.server 9898 &
cd $HOME_DIR
if [ "true" == "$RUN_BOOTNODE" ]; then
geth \
START_CMD="geth"
if [ "true" == "$CERC_REMOTE_DEBUG" ] && [ -x "/dlv" ]; then
START_CMD="/dlv --listen=:40000 --headless=true --api-version=2 --accept-multiclient exec /usr/local/bin/geth --continue --"
fi
if [ "true" == "$RUN_BOOTNODE" ]; then
$START_CMD \
--nodekeyhex="${BOOTNODE_KEY}" \
--nodiscover \
--ipcdisable \
--networkid=${NETWORK_ID} \
--netrestrict="${NETRESTRICT}" 2>&1 | tee /var/log/geth_bootnode.log
--netrestrict="${NETRESTRICT}"
else
cd /opt/testnet/accounts
./import_keys.sh
@@ -60,7 +65,7 @@ else
--statediff.writing=true"
fi
geth \
$START_CMD \
--bootnodes="${ENODE}" \
--allow-insecure-unlock \
--http \
@@ -80,5 +85,5 @@ else
--mine \
--miner.threads=1 \
--verbosity=5 \
--miner.etherbase="${ETHERBASE}" ${STATEDIFF_OPTS} 2>&1 | tee /var/log/geth.log
--miner.etherbase="${ETHERBASE}" ${STATEDIFF_OPTS}
fi
+2 -2
View File
@@ -2,8 +2,8 @@ cerc-io/ipld-eth-db
cerc-io/go-ethereum
cerc-io/ipld-eth-server
cerc-io/eth-statediff-service
vulcanize/eth-statediff-fill-service
vulcanize/ipld-eth-db-validator
cerc-io/eth-statediff-fill-service
cerc-io/ipld-eth-db-validator
cerc-io/ipld-eth-beacon-indexer
cerc-io/ipld-eth-beacon-db
cerc-io/laconicd
+2
View File
@@ -0,0 +1,2 @@
# This file should be re-generated running: scripts/update-version-file.sh script
v1.0.7-alpha-7edfa1b
+1 -1
View File
@@ -20,7 +20,7 @@ import os
import sys
from python_on_whales import DockerClient
import click
import importlib
import importlib.resources
from pathlib import Path
from .util import include_exclude_check
+1 -1
View File
@@ -22,7 +22,7 @@ from decouple import config
import git
from tqdm import tqdm
import click
import importlib
import importlib.resources
from .util import include_exclude_check
+30
View File
@@ -0,0 +1,30 @@
# Copyright © 2023 Cerc
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http:#www.gnu.org/licenses/>.
import click
import importlib.resources
@click.command()
@click.pass_context
def command(ctx):
'''print tool version'''
# See: https://stackoverflow.com/a/20885799/1701505
from . import data
with importlib.resources.open_text(data, "version.txt") as version_file:
# TODO: code better version that skips comment lines
version_string = version_file.read().splitlines()[1]
print(f"Version: {version_string}")
+2
View File
@@ -19,6 +19,7 @@ from app import setup_repositories
from app import build_containers
from app import build_npms
from app import deploy_system
from app import version
CONTEXT_SETTINGS = dict(help_option_names=['-h', '--help'])
@@ -49,3 +50,4 @@ cli.add_command(setup_repositories.command, "setup-repositories")
cli.add_command(build_containers.command, "build-containers")
cli.add_command(build_npms.command, "build-npms")
cli.add_command(deploy_system.command, "deploy-system")
cli.add_command(version.command, "version")
+4
View File
@@ -0,0 +1,4 @@
# Builds the shiv "package" for distribution
mkdir -p ./package
version_string=$( ./scripts/update_version_file.sh)
shiv -c laconic-so -o package/laconic-so-${version_string} .
+7
View File
@@ -0,0 +1,7 @@
version_file_name=./app/data/version.txt
echo "# This file should be re-generated running: scripts/update-version-file.sh script" > $version_file_name
tag_string=$( git describe --tags --abbrev=0 )
commit_string=$( git rev-parse --short HEAD )
version_string=${tag_string}-${commit_string}
echo ${version_string} >> $version_file_name
echo ${version_string}
+25
View File
@@ -0,0 +1,25 @@
# Basic simple test of stack-orchestrator functionality
echo "Running stack-orchestrator smoke test"
# Bit of a hack, test the most recent package
TEST_TARGET_SO=$( ls -t1 ./package/laconic-so* | head -1 )
# Set a non-default repo dir
export CERC_REPO_BASE_DIR=~/stack-orchestrator-test/repo-base-dir
echo "Testing this package: $TEST_TARGET_SO"
echo "Test version command"
reported_version_string=$( $TEST_TARGET_SO version )
echo "Version reported is: ${reported_version_string}"
echo "Cloning repositories into: $CERC_REPO_BASE_DIR"
rm -rf $CERC_REPO_BASE_DIR
mkdir -p $CERC_REPO_BASE_DIR
# Pull an example small public repo to test we can pull a repo
$TEST_TARGET_SO setup-repositories --include cerc-io/laconic-sdk
# TODO: test building the repo into a container
# Build two example containers
# TODO:
$TEST_TARGET_SO build-containers --include cerc/builder-js,cerc/test-container
# Deploy the test container
$TEST_TARGET_SO deploy-system --include test up
# TODO: test that we can use the deployed container somehow
# Clean up
$TEST_TARGET_SO deploy-system --include test down
echo "Test passed"