Skip to main content

Sample scopes

Sample scopes are working examples of scope types that nullplatform maintains in public repositories. Each one ships its scope specification, actions, workflows, and the code your agent runs to deploy to it, so you can adopt it as is or use it as the starting point for your own. They are examples, not the limit of what you can run: any scope type you craft works the same way.

Samples​

Each row is one scope type, as defined in the latest release of its repository:

  • Scope: the name developers see when they create a scope.
  • Description: what the scope deploys, as the scope type describes itself.
  • Repository: links to the folder with the scope's code. Some repositories hold several scope types.
ScopeDescriptionRepository
ContainersDocker containers on podsscopes/k8s
Scheduled TaskAllows you to deploy periodic jobs in Kubernetesscopes/scheduled_task
Static filesAllows you to deploy static files applicationsscopes-static-files/static-files
AWS LambdaServerless functions on AWS Lambdascopes-lambda/lambda
Containers On-PremiseDocker containers on pods, on self-managed/on-premise clustersscopes/onprem
Volt MX Foundry appPublishes a Volt MX Foundry app to a Foundry environmentscopes-voltmx-foundry-app/voltmx-foundry-app
Mobile storePublishes mobile app binaries (Android, iOS) to a distribution channel: tester groups, app stores or an enterprise storescopes-mobile-store/mobile-store

Each repository has its own releases and changelog. A scope that's no longer maintained stays listed, with Deprecated at the start of its name.

How adopting a sample scope works​

The repository's README has the exact steps and values for each scope. The flow is the same for all of them:

  1. Grant the agent its cloud permissions. If the scope has a requirements module in <path>/specs/requirements/<cloud>, apply it in your cloud account. It sets up the permissions your agent needs to deploy to the scope.
  2. Register the scope type in nullplatform. Use the scope_definition and scope_definition_agent_association modules from tofu-modules. The first one registers the scope type, its actions and its specification from the repository, and the second one routes the scope's actions to your agents. Some repositories include a ready-to-apply module for this in <path>/specs/install/<cloud>.
  3. Complete the scope's own prerequisites. Some scopes need more before their first deployment, such as a scope configuration, DNS zones, or a cluster the agent can reach.

Once it's registered, developers pick the scope type when they create a scope for their applications, like any other scope type.

note

You need a running agent with a notification channel for your scopes before you adopt one. If you don't have it yet, set it up first.

Next steps​