Add DeploymentContext.modify_yaml helper
Lint Checks / Run linter (pull_request) Successful in 3m37s
Deploy Test / Run deploy test suite (pull_request) Failing after 7m29s
K8s Deploy Test / Run deploy test suite on kind/k8s (pull_request) Failing after 8m48s
K8s Deployment Control Test / Run deployment control suite on kind/k8s (pull_request) Failing after 11m22s
Webapp Test / Run webapp test suite (pull_request) Successful in 14m39s
Smoke Test / Run basic test suite (pull_request) Successful in 17m17s

For custom deploy commands
This commit is contained in:
2025-10-19 13:59:08 +08:00
parent 8f92e2700c
commit b1a489ef1b
2 changed files with 25 additions and 12 deletions
@@ -14,7 +14,6 @@
# along with this program. If not, see <http:#www.gnu.org/licenses/>.
from stack_orchestrator.deploy.deployment_context import DeploymentContext
from ruamel.yaml import YAML
def create(context: DeploymentContext, extra_args):
@@ -23,17 +22,12 @@ def create(context: DeploymentContext, extra_args):
# deterministic-deployment-proxy contract, which itself is a prereq for Optimism contract deployment
fixturenet_eth_compose_file = context.deployment_dir.joinpath('compose', 'docker-compose-fixturenet-eth.yml')
with open(fixturenet_eth_compose_file, 'r') as yaml_file:
yaml = YAML()
yaml_data = yaml.load(yaml_file)
new_script = '../config/fixturenet-optimism/run-geth.sh:/opt/testnet/run.sh'
if new_script not in yaml_data['services']['fixturenet-eth-geth-1']['volumes']:
yaml_data['services']['fixturenet-eth-geth-1']['volumes'].append(new_script)
def add_geth_volume(yaml_data):
if new_script not in yaml_data['services']['fixturenet-eth-geth-1']['volumes']:
yaml_data['services']['fixturenet-eth-geth-1']['volumes'].append(new_script)
with open(fixturenet_eth_compose_file, 'w') as yaml_file:
yaml = YAML()
yaml.dump(yaml_data, yaml_file)
context.modify_yaml(fixturenet_eth_compose_file, add_geth_volume)
return None