stack-orchestrator/stack_orchestrator/deploy
Thomas E Lackey fa21ff2627
All checks were successful
Lint Checks / Run linter (push) Successful in 36s
Publish / Build and publish (push) Successful in 1m6s
Smoke Test / Run basic test suite (push) Successful in 3m53s
Webapp Test / Run webapp test suite (push) Successful in 4m33s
Deploy Test / Run deploy test suite (push) Successful in 4m39s
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 13m10s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 7m25s
Support uploaded config, add 'publish-webapp-deployer' and 'request-webapp-deployment' commands (#938)
This adds two new commands: `publish-webapp-deployer` and `request-webapp-deployment`.

`publish-webapp-deployer` creates a `WebappDeployer` record, which provides information to requestors like the API URL, minimum required payment, payment address, and public key to use for encrypting config.

```
$ laconic-so publish-deployer-to-registry \
  --laconic-config ~/.laconic/laconic.yml \
  --api-url https://webapp-deployer-api.dev.vaasl.io \
  --public-key-file webapp-deployer-api.dev.vaasl.io.pgp.pub  \
  --lrn lrn://laconic/deployers/webapp-deployer-api.dev.vaasl.io  \
  --min-required-payment 100000
```

`request-webapp-deployment` simplifies publishing a `WebappDeploymentRequest` and can also handle automatic payment, and encryption and upload of configuration.

```
$ laconic-so request-webapp-deployment \
  --laconic-config ~/.laconic/laconic.yml \
  --deployer lrn://laconic/deployers/webapp-deployer-api.dev.vaasl.io \
  --app lrn://cerc-io/applications/webapp-hello-world@0.1.3 \
  --env-file ~/yaml/hello.env \
  --make-payment auto
```

Related changes are included for the deploy/undeploy commands for decrypting and using config, using the payment address from the WebappDeployer record, etc.

Reviewed-on: #938
2024-08-27 19:55:06 +00:00
..
compose Allow to disable kind cluster management for testing (#915) 2024-08-13 17:48:14 +00:00
k8s Support uploaded config, add 'publish-webapp-deployer' and 'request-webapp-deployment' commands (#938) 2024-08-27 19:55:06 +00:00
webapp Support uploaded config, add 'publish-webapp-deployer' and 'request-webapp-deployment' commands (#938) 2024-08-27 19:55:06 +00:00
__init__.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
deploy_types.py Add stage 1 support 2024-08-07 11:28:10 -06:00
deploy_util.py Mainnet-laconic stack fixes for laconicd2 (#904) 2024-07-31 13:51:28 +00:00
deploy.py Allow to disable kind cluster management for testing (#915) 2024-08-13 17:48:14 +00:00
deployer_factory.py Add ConfigMap test. (#726) 2024-02-05 14:15:11 -06:00
deployer.py Allow to disable kind cluster management for testing (#915) 2024-08-13 17:48:14 +00:00
deployment_context.py Generate a unique deployment id for each deployment (#680) 2023-12-05 22:56:58 -07:00
deployment_create.py Copy config under a volume for Docker (similar to a ConfigMap for K8S). (#914) 2024-08-10 02:32:21 +00:00
deployment.py Allow to disable kind cluster management for testing (#915) 2024-08-13 17:48:14 +00:00
images.py Fix image tag name 2024-06-13 08:31:45 -06:00
spec.py Add support for k8s pod to node affinity and taint toleration (#917) 2024-08-15 20:32:58 +00:00
stack_state.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
stack.py kind test stack (#629) 2023-11-08 01:11:00 -07:00