stack-orchestrator/stack_orchestrator/data/stacks/package-registry
Prathamesh Musale 0c47da42fe Integrate SP auctions in webapp deployment flow (#950)
Part of [Service provider auctions for web deployments](https://www.notion.so/Service-provider-auctions-for-web-deployments-104a6b22d47280dbad51d28aa3a91d75) and cerc-io/stack-orchestrator#948

- Add a command `publish-deployment-auction` to create and publish an app deployment auction
- Add a command `handle-deployment-auction` to handle auctions on deployer side
- Update `request-webapp-deployment` command to allow using an auction id in deployment requests
- Update `deploy-webapp-from-registry` command to handle deployment requests with auction
- Add a command `request-webapp-undeployment` to request an application undeployment

Reviewed-on: cerc-io/stack-orchestrator#950
Reviewed-by: ashwin <ashwin@noreply.git.vdb.to>
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-10-21 07:02:06 +00:00
..
README.md Integrate SP auctions in webapp deployment flow (#950) 2024-10-21 07:02:06 +00:00
stack.yml Update independent act-runner stack to use custom act as well. (#702) 2024-01-15 12:10:48 -06:00

Package Registry Stack

The Package Registry Stack supports a build environment that requires a package registry (initially for NPM packages only).

Setup

  • Setup required repos and build containers:

    laconic-so --stack package-registry setup-repositories
    laconic-so --stack package-registry build-containers
    
  • Create a deployment:

    laconic-so --stack package-registry deploy init --output package-registry-spec.yml
    # Update port mapping in the laconic-loaded.spec file to resolve port conflicts on host if any
    
    laconic-so --stack package-registry deploy create --deployment-dir package-registry-deployment --spec-file package-registry-spec.yml
    
  • Start the deployment:

    laconic-so deployment --dir package-registry-deployment start
    
  • The local gitea registry can now be accessed at http://localhost:3000 (the username and password can be taken from the deployment logs)

  • Configure the hostname gitea.local:

    Update /etc/hosts:

    sudo nano /etc/hosts
    
    # Add the following line
    127.0.0.1       gitea.local
    

    Check resolution:

    ping gitea.local
    
    PING gitea.local (127.0.0.1) 56(84) bytes of data.
    64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.147 ms
    64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.033 ms
    ...