### Example: Get 'alarms' Project Details Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_get.md This is an example of how to get details for a project with the slug 'alarms'. ```bash # Get details for the "alarms" project mass project get alarms ``` -------------------------------- ### Example: Add Postgres Bundle as 'db' Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_component_add.md This example demonstrates adding a Postgres bundle, identified as 'db', to the 'ecomm' project. ```shell # Add a Postgres bundle as "db" to the ecomm project mass component add ecomm aws-rds-cluster --id db ``` -------------------------------- ### Example: Exporting a Specific Instance Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_export.md This example demonstrates how to export the 'app' instance within the 'prod' environment of the 'web' project. ```bash # Export the "app" instance in the "prod" environment of the "web" project mass instance export web-prod-app ``` -------------------------------- ### Example: Exporting an Instance with Manifest Slug Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_export.md This example shows how to export an instance using its project, environment, and manifest slugs, such as 'ecomm-prod-vpc'. ```bash mass instance export ecomm-prod-vpc ``` -------------------------------- ### Example: Get AWS S3 Resource Type Details Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource-type_get.md This example demonstrates how to retrieve detailed information for the 'aws-s3' resource type using the mass CLI. ```bash # Get details for the "aws-s3" resource type mass resource-type get aws-s3 ``` -------------------------------- ### Example: Add Component with Display Name and Description Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_component_add.md This example shows how to add a component with a custom display name and description, providing more context for the component. ```shell # With a friendly display name and description mass component add ecomm aws-rds-cluster --id db \ --name "Primary Database" \ --description "Production customer data store" ``` -------------------------------- ### Install Mass CLI with Go Source: https://github.com/massdriver-cloud/mass/blob/main/README.md Install the Mass CLI using the Go toolchain. Requires Go to be installed and configured. ```sh go install github.com/massdriver-cloud/mass ``` -------------------------------- ### Install Mass CLI with Homebrew Source: https://github.com/massdriver-cloud/mass/blob/main/README.md Use Homebrew to install the Mass CLI. Ensure Homebrew is installed on your system. ```sh brew install massdriver ``` -------------------------------- ### Example: Add Component with Display Name Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_component_add.md This example adds a component to the 'ecomm' project with a specified display name. ```shell mass component add ecomm aws-rds-cluster --id db --name "Primary Database" ``` -------------------------------- ### Example: Set Resource as Default for Environment Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_default.md This example demonstrates how to set a specific resource (e.g., 'api-prod') as the default for an environment (e.g., 'abc123-def456'). ```bash # Set a resource as default for an environment mass env default api-prod abc123-def456 ``` -------------------------------- ### Example: Exporting a Specific Environment Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_export.md This example demonstrates how to export the 'prod' environment within the 'web' project. Ensure the project slug is correctly formatted. ```bash # Export the "prod" environment in the "web" project mass environment export web-prod ``` -------------------------------- ### Install Mass CLI with Go Source: https://context7.com/massdriver-cloud/mass/llms.txt Install the Mass CLI directly using the Go toolchain. Ensure your Go environment is set up correctly. ```sh # Go install go install github.com/massdriver-cloud/mass ``` -------------------------------- ### Update Resource Payload and Rename Example Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_update.md Example demonstrating how to update a resource's payload and assign it a new name simultaneously. ```shell mass resource update 12345678-1234-1234-1234-123456789012 -f resource.json -n new-name ``` -------------------------------- ### Example: Exporting the 'web' Project Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_export.md Demonstrates how to export a specific project, in this case, the project identified by the slug 'web'. ```bash # Export the "web" project mass project export web ``` -------------------------------- ### Help for Get Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_get.md Access help information for the 'mass repository get' command to understand its usage and available options. ```bash mass repository get --help ``` -------------------------------- ### Create Project with Custom Name Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_create.md This example demonstrates creating a project with a specific slug and a custom name using the --name flag. ```bash mass project create dbbundle --name "Database Bundle Project" ``` -------------------------------- ### Add a Component with Display Name and Description Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/component/add.md This example shows how to add a component with a friendly display name and a detailed description. This is useful for providing more context about the component's purpose. ```shell # Add a Postgres bundle as "db" to the ecomm project mass component add ecomm aws-rds-cluster --id db # With a friendly display name and description mass component add ecomm aws-rds-cluster --id db \ --name "Primary Database" \ --description "Production customer data store" ``` -------------------------------- ### Install Bash Completions for All Sessions (macOS) Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_completion_bash.md For macOS, use brew to find the correct directory and redirect the output to install bash completions for every new session. ```bash mass completion bash > $(brew --prefix)/etc/bash_completion.d/mass ``` -------------------------------- ### List All Projects using Mass CLI Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_list.md Execute this command to display a list of all projects associated with your Massdriver organization. No additional setup is required beyond having the Mass CLI installed and authenticated. ```bash mass project list ``` -------------------------------- ### Mass Project Get Command Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_get.md Available options for the 'mass project get' command include help and output format selection. ```bash -h, --help help for get -o, --output string Output format (text or json) (default "text") ``` -------------------------------- ### Update Resource Payload Example Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_update.md Example of updating a resource's payload using its ID and a resource file. ```shell mass resource update 12345678-1234-1234-1234-123456789012 -f resource.json ``` -------------------------------- ### List, Get, Export, and Version Instances Source: https://context7.com/massdriver-cloud/mass/llms.txt Manage instance details, including listing all instances, retrieving specific instance details in various formats, exporting configurations, and pinning instances to specific bundle versions. ```sh # List all instances in an environment mass instance list ecomm-prod # ID Name Bundle Status # ecomm-prod-vpc vpc aws-vpc deployed # ecomm-prod-api api aws-lambda-api deployed ``` ```sh # Get instance details mass instance get ecomm-prod-api mass instance get ecomm-prod-api -o json ``` ```sh # Export instance configuration mass instance export ecomm-prod-api > api-config.yaml ``` ```sh # Pin an instance to a specific bundle version mass instance version ecomm-prod-api@0.3.1 # ✅ Instance `ecomm-prod-api` version set successfully ``` ```sh # Pin to latest mass instance version ecomm-prod-api@latest ``` -------------------------------- ### Link Components with Latest Versions Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/component/link.md Example of linking a database's authentication output to an application's database input using the default `latest` versions. ```shell # Link the database's authentication output to the app's database input, with latest versions mass component link ecomm-db.authentication ecomm-app.database ``` -------------------------------- ### Example JSON Document Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_schema_validate.md This is an example of a JSON document that can be validated against a schema. ```json { "firstName": "John", "lastName": "Doe", "age": 23 } ``` -------------------------------- ### Get Instance Details Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_get.md Retrieves detailed information about a specific instance using its slug. The instance slug follows the format: --. ```bash mass instance get ``` ```bash mass instance get ecomm-prod-vpc ``` ```bash mass instance get -- [flags] ``` ```bash mass instance get ecomm-prod-vpc ``` -------------------------------- ### Configure Massdriver CLI Source: https://github.com/massdriver-cloud/mass/blob/main/internal/resourcetype/testdata/massdriver-yaml-resource/instructions/cli.md Run this command to start the CLI configuration process. You will be prompted to enter your credentials. ```bash tool configure ``` -------------------------------- ### Install Bash Completions for All Sessions (Linux) Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_completion_bash.md To automatically load bash completions for every new session on Linux, redirect the output to a file in /etc/bash_completion.d/. ```bash mass completion bash > /etc/bash_completion.d/mass ``` -------------------------------- ### Mass Project Get Command Syntax Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_get.md This shows the general syntax for the 'mass project get' command, including optional arguments and flags. ```bash mass project get [project] [flags] ``` -------------------------------- ### Get Project Details by Slug Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_get.md Use this command to retrieve all details for a specific project. Replace `` with the actual slug of the project you want to query. ```bash mass project get ``` -------------------------------- ### Install Zsh Completions on macOS Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_completion_zsh.md Redirect the output of `mass completion zsh` to the site-functions directory using `brew --prefix` for permanent installation on macOS. A new shell session is required for changes to take effect. ```zsh mass completion zsh > $(brew --prefix)/share/zsh/site-functions/_mass ``` -------------------------------- ### Manage Resources Source: https://context7.com/massdriver-cloud/mass/llms.txt Create, get, download, update, and delete resources, which represent infrastructure values that can be imported and passed between instances. ```sh # Import an external resource from a JSON payload file mass resource create \ --name prod-vpc \ --type massdriver/aws-vpc \ --file ./vpc-payload.json ``` ```sh # Get resource details (by UUID or friendly slug) mass resource get api-prod-database-connection mass resource get 12345678-1234-1234-1234-123456789012 mass resource get api-prod-grpcapi-host -o json ``` ```sh # Download the resource payload in various formats mass resource download api-prod-database-connection mass resource download api-prod-database-connection --format yaml ``` ```sh # Update an imported resource's payload and optionally rename it mass resource update 12345678-1234-1234-1234-123456789012 \ --file ./updated-vpc.json \ --name prod-vpc-v2 ``` ```sh # Delete a resource (interactive confirmation by default) mass resource delete 12345678-1234-1234-1234-123456789012 ``` ```sh # Delete without prompt mass resource delete 12345678-1234-1234-1234-123456789012 --force ``` -------------------------------- ### Mass Component Link Command with Version Flags Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_component_link.md Example demonstrating the use of version flags to pin specific version constraints for the source and destination components when linking. ```shell mass component link ecomm-db.authentication ecomm-app.database --from-version ~1.0 --to-version ~2.0 ``` -------------------------------- ### Get Bundle Information Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_get.md Use this command to retrieve details about a specific bundle. If no version is specified, it defaults to the latest available version. ```bash mass bundle get [@] [flags] ``` ```bash # Get the latest version of a bundle mass bundle get aws-vpc ``` ```bash # Get a specific version mass bundle get aws-vpc@1.0.0 ``` ```bash # Get output as JSON mass bundle get aws-vpc@1.0.0 -o json ``` ```bash # Get output as formatted markdown (default) mass bundle get aws-vpc@1.0.0 -o text ``` -------------------------------- ### Copy Configuration Between Environments Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_deploy.md Deploy an instance using a configuration obtained from another environment's deployment. This involves getting the configuration, filtering it with jq, and piping it to the deploy command. ```shell mass instance get api-prod-web -o json | jq .params | mass instance deploy api-staging-web --params=- ``` -------------------------------- ### Manage Environments Source: https://context7.com/massdriver-cloud/mass/llms.txt Commands for creating, listing, getting, exporting, updating, and setting default environments within projects. Environments contain deployed component instances. ```sh # Create an environment inside project "ecomm" mass environment create ecomm-prod \ --name "Production" \ --description "Live production environment" \ --attributes environment=production,region=us-east-1 ``` ```sh # List all environments in a project mass environment list ecomm ``` ```sh # Get environment details mass environment get ecomm-prod mass environment get ecomm-prod -o json ``` ```sh # Export environment state mass environment export ecomm-prod > ecomm-prod.yaml ``` ```sh # Update name/attributes mass environment update ecomm-prod --name "Prod v2" --attributes environment=prod,tier=1 ``` ```sh # Set a default connection (shared resource) for an environment mass environment default ecomm-prod network-useast1-vpc ``` -------------------------------- ### Install Zsh Completions on Linux Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_completion_zsh.md Redirect the output of `mass completion zsh` to a file in your Zsh functions path for permanent installation on Linux. A new shell session is required for changes to take effect. ```zsh mass completion zsh > "${fpath[1]}/_mass" ``` -------------------------------- ### Help Option for Mass Project List Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_list.md To view available options and get help for the 'mass project list' command, use the '--help' flag. This is useful for understanding command-specific parameters. ```bash # List all projects mass project list ``` -------------------------------- ### Manage Projects Source: https://context7.com/massdriver-cloud/mass/llms.txt Commands for creating, listing, getting, exporting, updating, and deleting projects. Projects are top-level organizational units. ```sh # Create a project mass project create ecomm \ --name "E-Commerce Platform" \ --description "Production e-commerce system" \ --attributes team=platform,system=ecomm ``` ```sh # List all projects with cost data mass project list ``` ```sh # Get project details (text or JSON) mass project get ecomm mass project get ecomm -o json ``` ```sh # Export project configuration to YAML/JSON for GitOps mass project export ecomm > ecomm-project.yaml ``` ```sh # Update name and attributes mass project update ecomm --name "E-Commerce v2" --attributes team=platform,tier=1 ``` ```sh # Delete with confirmation prompt (type project ID to confirm) mass project delete ecomm ``` ```sh # Delete without prompt (CI use) mass project delete ecomm --force ``` -------------------------------- ### List, Get, and Stream Deployment Logs Source: https://context7.com/massdriver-cloud/mass/llms.txt Inspect deployments by listing recent deployments, retrieving specific deployment details, and streaming live or static logs. ```sh # List the 10 most recent deployments for an instance mass deployment list ecomm-prod-api ``` ```sh # Show the last 25 deployments mass deployment list ecomm-prod-api --limit 25 # ID Action Status Version Created At By Message # 550e8400-e29b-41d4-a716-446655440000 provision deployed 0.3.1 2024-05-01 10:00:00 alice@… Bumping instance type ``` ```sh # Get details for a specific deployment mass deployment get 550e8400-e29b-41d4-a716-446655440000 mass deployment get 550e8400-e29b-41d4-a716-446655440000 -o json ``` ```sh # Stream live logs from a deployment (requires personal access token mds_*/md_*) mass deployment logs 550e8400-e29b-41d4-a716-446655440000 ``` ```sh # Static log dump (fallback when PAT not available) # Warning is printed automatically; logs are shown regardless mass deployment logs 550e8400-e29b-41d4-a716-446655440000 ``` -------------------------------- ### Get Resource Type Command Synopsis Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource-type_get.md This is the basic command structure for retrieving a resource type. Replace '' with the actual name of the resource you want to get. ```bash mass resource-type get ``` -------------------------------- ### Get Deployment Logs Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/deployment/logs.md Use this command to print logs for a specific deployment. Replace '' with the actual ID of the deployment. ```shell mass deployment logs ``` ```shell mass deployment logs 12345678-1234-1234-1234-123456789012 ``` -------------------------------- ### Get Bundle Details Source: https://context7.com/massdriver-cloud/mass/llms.txt Retrieve details for a specific bundle, either the latest version or a specific version. Output can be in text or JSON format. ```sh mass bundle get aws-aurora-postgres ``` ```sh mass bundle get aws-aurora-postgres@0.3.1 ``` ```sh mass bundle get aws-aurora-postgres@0.3.1 -o json ``` -------------------------------- ### Get OCI Repository by Name Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_get.md Use this command to retrieve an OCI repository by its name. Specify the repository name as an argument. ```bash mass repository get ``` -------------------------------- ### Get Instance CLI Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/instance/get.md Use this command to retrieve details for a specific instance. The instance slug can be found by hovering over the bundle in the Massdriver diagram and follows the format: --. ```bash mass instance get ``` ```bash # Get details for a VPC instance in the ecommerce production environment mass instance get ecomm-prod-vpc ``` -------------------------------- ### Basic Instance Deploy Syntax Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_deploy.md The fundamental syntax for deploying an instance, specifying the project, environment, and manifest. ```shell mass instance deploy -- [flags] ``` -------------------------------- ### Get Resource Details in JSON Format Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_get.md Retrieves resource details and formats the output as JSON. This is useful for programmatic consumption of the data. ```bash mass resource get 12345678-1234-1234-1234-123456789012 --output json ``` ```bash mass resource get api-prod-grpcapi-host -o json ``` -------------------------------- ### Deploy Instance with Configuration from STDIN Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_deploy.md Deploy an instance using a configuration provided via standard input. Use '-' as the parameter path to signify STDIN. ```shell echo '{"hello": "world"}' | mass instance deploy ecomm-prod-vpc --params=- ``` -------------------------------- ### Get Resource Details (Friendly Slug) Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_get.md Retrieves resource details using a human-readable 'friendly slug'. This format is typically used for provisioned resources. ```bash mass resource get api-prod-database-connection ``` ```bash mass resource get network-useast1-vpc-network ``` -------------------------------- ### Scaffold a New Bundle Non-interactively Source: https://context7.com/massdriver-cloud/mass/llms.txt Create a new bundle non-interactively by specifying the name, template, description, connections, and output directory. This example creates an OpenTofu bundle pre-wired to a VPC connection. ```sh # Non-interactive: create an OpenTofu bundle pre-wired to a VPC connection mass bundle new \ --name aws-aurora-postgres \ --template-name opentofu \ --description "Aurora PostgreSQL cluster" \ --connections network=massdriver/vpc \ --output-directory ./bundles/aws-aurora-postgres ``` -------------------------------- ### Get Environment Details Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_get.md Use this command to retrieve detailed information for a specific environment within a project. Provide the project and environment slugs separated by a hyphen. ```bash mass environment get - ``` ```bash # Get details for the "prod" environment in the "web" project mass environment get web-prod ``` ```bash mass environment get [environment] [flags] ``` -------------------------------- ### Get Deployment by ID Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_deployment_get.md Retrieves a deployment by its UUID. Use this command to fetch the status, action, version, and timing of a specific deployment. ```shell mass deployment get ``` ```shell mass deployment get 12345678-1234-1234-1234-123456789012 ``` ```shell mass deployment get 12345678-1234-1234-1234-123456789012 --output json ``` -------------------------------- ### Skeleton massdriver.yaml Example Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_new.md A basic structure for a `massdriver.yaml` file used to define a bundle. This includes schema, name, description, source URL, type, access, steps, parameters, connections, artifacts, and UI configuration. ```yaml schema: draft-07 name: "{{ name }}" description: "{{ description }}" source_url: github.com/YOUR_ORG/{{ name }} type: bundle access: private steps: - path: src provisioner: opentofu params: required: [] properties: {} connections: required: [] properties: {} artifacts: required: [] properties: {} ui: ui:order: [] ``` -------------------------------- ### Mass Resource-Type Get Command with Flags Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource-type_get.md This shows the full command structure including potential flags, such as output format. The 'resource-type' is a required argument. ```bash mass resource-type get [resource-type] [flags] ``` -------------------------------- ### Example JSON Schema Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_schema_validate.md This is an example of a JSON Schema used for validation. It defines the structure and types for a 'Person' object. ```json { "$id": "https://example.com/person.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Person", "type": "object", "properties": { "firstName": { "type": "string", "description": "The person's first name." }, "lastName": { "type": "string", "description": "The person's last name." }, "age": { "description": "Age in years which must be equal to or greater than zero.", "type": "integer", "minimum": 0 } } } ``` -------------------------------- ### Delete Imported Resource Example Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_delete.md Example of deleting an imported resource by its ID. Ensure you have the correct resource ID. ```bash mass resource delete 12345678-1234-1234-1234-123456789012 ``` -------------------------------- ### Deploy Instance with Patches and Params Source: https://context7.com/massdriver-cloud/mass/llms.txt Apply multiple patches or read parameters from stdin when deploying an instance. ```sh mass instance deploy ecomm-prod-api \ --patch '.instance_type = "t3.xlarge"' \ --patch '.replicas = 3' ``` ```sh echo '{"instance_type":"t3.large"}' | mass instance deploy ecomm-prod-api --params - ``` -------------------------------- ### List Instances in a Project Environment Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/instance/list.md Use this command to view all instances associated with a particular project and environment. Replace `-` with your specific project and environment names. ```bash mass instance list - ``` ```bash # List all instances in the "ecomm" project's "prod" environment mass instance list ecomm-prod ``` -------------------------------- ### Create Project with Description and Attributes Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_create.md This command shows how to create a project with a description and custom attributes for ABAC. Attributes can be repeated or comma-separated. ```bash mass project create my-project -d "A new project for testing" -a team=ops,system=api ``` -------------------------------- ### Mass Resource Get Command Synopsis Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_get.md The basic syntax for the 'mass resource get' command, showing the required resource ID and optional flags. ```bash mass resource get [flags] ``` -------------------------------- ### Help Option for Publish Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource-type_publish.md Displays help information for the 'publish' subcommand. ```bash -h, --help help for publish ``` -------------------------------- ### Create a Resource with Flags Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_create.md Use this command to create a new resource by providing its name, type, and a configuration file path. Ensure all required flags are present. ```shell mass resource create -n -t -f ``` -------------------------------- ### List All Bundles Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_list.md Use this command to display all bundle repositories in your organization. No specific flags are required for a basic listing. ```bash mass bundle list ``` -------------------------------- ### Get OCI Repository with Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_get.md Customize the output of the 'mass repository get' command using flags. The -o flag controls the output format (text or json), and the -n flag specifies the number of recent tags to display. ```bash mass repository get [flags] ``` ```bash mass repository get -o json -n 5 ``` -------------------------------- ### Deploy Instance with New Configuration Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_deploy.md Deploy an instance with a new full configuration by specifying the path to a parameters file. Supports JSON, TFvars, YAML, and TOML formats. Bash interpolation is supported for file paths. ```shell mass instance deploy ecomm-prod-vpc --params=params.json ``` ```shell mass instance deploy ecomm-prod-vpc --params=params.tfvars ``` ```shell mass instance deploy ecomm-prod-vpc --params=params.yaml ``` ```shell mass instance deploy ecomm-prod-vpc --params=params.toml ``` -------------------------------- ### List Available Bundle Templates Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_template_list.md Executes the command to list all available bundle templates. Ensure your templates path is correctly configured. ```shell mass bundle template list ``` -------------------------------- ### Get a Mass Deployment by ID Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_deployment_get.md Retrieves a single deployment by its UUID, including status, action, version, and timing. ```APIDOC ## mass deployment get ### Description Get a deployment by ID ### Synopsis # Get a Deployment Retrieves a single deployment by its UUID, including status, action, version, and timing. ## Usage ```shell mass deployment get [--output text|json] ``` ## Examples ```shell mass deployment get 12345678-1234-1234-1234-123456789012 mass deployment get 12345678-1234-1234-1234-123456789012 --output json ``` ``` mass deployment get [flags] ``` ### Examples ``` mass deployment get 12345678-1234-1234-1234-123456789012 ``` ### Options ``` -h, --help help for get -o, --output string Output format (text or json) (default "text") ``` ### SEE ALSO * [mass deployment](/cli/commands/mass_deployment) - Manage deployments ``` -------------------------------- ### Generate Bash Completion Script Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_completion_bash.md Use this command to generate the autocompletion script for the bash shell. Ensure 'bash-completion' is installed. ```bash mass completion bash ``` -------------------------------- ### List All Resource Types Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource-type_list.md Use this command to list all available resource types in your organization. ```bash mass resource-type list ``` -------------------------------- ### List Bundle Templates with Flags Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_template_list.md Shows the command syntax for listing bundle templates, including available flags. Use the help flag for more details. ```shell mass bundle template list [flags] ``` -------------------------------- ### Mass Repository Get Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_get.md Retrieves an OCI repository by its name. You can specify output format and the number of recent tags to display. ```APIDOC ## mass repository get ### Description Get an OCI repository by name. ### Usage ``` mass repository get [flags] ``` ### Options - `-h, --help` help for get - `-o, --output string` Output format (text or json) (default "text") - `-n, --tags int` Number of recent tags to display (newest first) (default 10) ``` -------------------------------- ### Mass Bundle Template CLI Help Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_template.md Displays help information for the 'mass bundle template' command, including available options and related commands. ```bash -h, --help help for template ``` -------------------------------- ### Environment Create Command Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_create.md Lists available flags for the 'mass environment create' command, including options for attributes, description, help, and name. ```bash -a, --attributes stringToString Custom attributes for ABAC (e.g. -a environment=staging,region=uswest) (default []) -d, --description string Optional environment description -h, --help help for create -n, --name string Environment name (defaults to ID if not provided) ``` -------------------------------- ### Help for Mass Version Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_version.md To view available options and help information for the 'mass version' command, use the '--help' flag. ```bash -h, --help help for version ``` -------------------------------- ### Get Repository Details Source: https://context7.com/massdriver-cloud/mass/llms.txt Retrieves details for a specific repository, including its last 20 tags. Use '-o json' for JSON output. ```sh # Get repository details with last 20 tags mass repository get aws-aurora-postgres --tags 20 mass repository get aws-aurora-postgres -o json ``` -------------------------------- ### Environment Create Command Synopsis Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_create.md This is the general syntax for the environment create command, showing the required ID and optional flags. ```bash mass environment create [ID] [flags] ``` -------------------------------- ### Get Resource Details (UUID) Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_get.md Retrieves resource details using its unique identifier (UUID). This is the default format and is suitable for imported resources. ```bash mass resource get 12345678-1234-1234-1234-123456789012 ``` -------------------------------- ### Help Option for Default Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_default.md Use this option to display help information for the 'default' command. ```bash # help for default -h, --help help for default ``` -------------------------------- ### Instance Export Command Structure Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_export.md This shows the general structure of the instance export command, including placeholders for project, environment, and manifest slugs. ```bash mass instance export -- [flags] ``` -------------------------------- ### Help Option for Export Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_export.md Lists available options for the `mass project export` command. Use the help flag to see all available parameters. ```bash -h, --help help for export ``` -------------------------------- ### Get Deployment Logs CLI Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_deployment_logs.md Use this command to stream the log output from a specific deployment. Replace `` with the actual ID of the deployment. ```shell mass deployment logs ``` ```shell mass deployment logs 12345678-1234-1234-1234-123456789012 ``` ```shell mass deployment logs [flags] ``` ```shell mass deployment logs 12345678-1234-1234-1234-123456789012 ``` -------------------------------- ### Deploy Instance Source: https://context7.com/massdriver-cloud/mass/llms.txt Deploy or update an instance within an environment. Supports deploying with a message, streaming logs, using a parameter file, or patching specific fields. ```sh # Deploy using current configuration mass instance deploy ecomm-prod-vpc ``` ```sh # Deploy with a message, streaming logs until completion mass instance deploy ecomm-prod-vpc --message "Bumping instance type" --follow ``` ```sh # Full replacement of configuration from a JSON file mass instance deploy ecomm-prod-api --params ./api-params.json ``` ```sh # Patch a single field using JQ without touching the rest of the configuration mass instance deploy ecomm-prod-api \ --patch '.instance_type = "t3.large"' \ --message "Scale up" ``` -------------------------------- ### Output Bundle List as JSON Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_list.md To get the bundle list in JSON format, use the -o json flag. This is useful for programmatic processing of the output. ```bash mass bundle list -o json ``` -------------------------------- ### Create Project with Slug Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_create.md Use this command to create a new project with a specified slug. The project name will default to the slug if not explicitly provided. ```bash mass project create dbbundle ``` -------------------------------- ### Help for List Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_list.md Displays help information for the 'mass instance list' command. This includes available flags and options. ```bash # -h, --help help for list ``` -------------------------------- ### Get Resource Type Definition Source: https://context7.com/massdriver-cloud/mass/llms.txt Retrieves a specific resource type definition, either in text or JSON format. Use '-o json' for JSON output. ```sh # Get a resource type definition (text or JSON) mass resource-type get massdriver/aws-vpc mass resource-type get massdriver/aws-vpc -o json ``` -------------------------------- ### List Bundles Source: https://context7.com/massdriver-cloud/mass/llms.txt List all available bundles. Supports searching by name fragment and sorting by creation date. Can output in JSON format. ```sh mass bundle list ``` ```sh mass bundle list --search "postgres" --sort created_at --order desc ``` ```sh mass bundle list --name aws-aurora-postgres --output json ``` -------------------------------- ### Download Resource in YAML Format Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_download.md Download a resource and specify the output format as YAML using the --format or -f flag. ```bash mass resource download 12345678-1234-1234-1234-123456789012 --format yaml ``` ```bash mass resource download api-prod-grpcapi-host -f yaml ``` -------------------------------- ### Get a Deployment by ID Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/deployment/get.md Use this command to retrieve a specific deployment. Replace `` with the actual UUID of the deployment. You can optionally specify the output format as text or JSON. ```shell mass deployment get [--output text|json] ``` ```shell mass deployment get 12345678-1234-1234-1234-123456789012 ``` ```shell mass deployment get 12345678-1234-1234-1234-123456789012 --output json ``` -------------------------------- ### Create Project CLI Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/project/create.md Use this command to create a new project. The slug is mandatory, and a custom name can be provided using the --name flag. ```bash mass project create [flags] ``` ```bash # Create a project with slug "dbbundle" mass project create dbbundle ``` ```bash # Create a project with a custom name mass project create dbbundle --name "Database Bundle Project" ``` -------------------------------- ### Get Resource Type Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource-type_get.md Retrieves detailed information about a specific resource type. This includes the resource type name and label, schema, UI configuration, and connection settings. ```APIDOC ## mass resource-type get ### Description Get a resource type from Massdriver. Retrieves detailed information about a specific resource type, including: - Resource type name and label - Schema - UI configuration - Connection settings ### Usage ```bash mass resource-type get ``` ### Parameters #### Path Parameters - **resource-type** (string) - Required - The name of the resource type to retrieve. ### Options - **--output** or **-o** (string) - Optional - Output format (text or json). Defaults to "text". ### Examples ```bash # Get details for the "aws-s3" resource type mass resource-type get aws-s3 ``` ### SEE ALSO * [mass resource-type](/cli/commands/mass_resource-type) - Resource type management ``` -------------------------------- ### List Instances in an Environment Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_list.md Use this command to list all instances within a specific Massdriver project and environment. Replace `-` with your project and environment names. ```bash mass instance list - ``` ```bash # List all instances in the "ecomm" project's "prod" environment mass instance list ecomm-prod ``` ```bash mass instance list - [flags] ``` ```bash mass instance list ecomm-prod ``` -------------------------------- ### List Environments in a Project Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/environment/list.md Use this command to view all environments associated with a given project slug. Ensure the project slug is accurate. ```bash mass environment list ``` ```bash # List all environments in "web" project mass environment list web ``` -------------------------------- ### Update Component Name and Attributes Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_component_update.md Example of updating a component's display name and adding or replacing custom attributes. The `-a` flag accepts key-value pairs for attributes. ```bash mass component update ecomm-db --name "Primary DB" -a priority=high ``` -------------------------------- ### Create Bundle from OpenTofu Module Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_new.md Use the `mass bundle new` command with flags to create a new bundle from an OpenTofu module. Specify the bundle name, output directory, template type, connection, and path to the OpenTofu module directory. ```shell mass bundle new -n foo -o massdriver -t opentofu-module -c network=massdriver/vpc -p /path/to/opentofu/dir ``` -------------------------------- ### Create Environment with Custom Name Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_create.md Create an environment and assign it a specific name that differs from its slug. ```bash mass environment create dbbundle-test --name "Database Test Environment" ``` -------------------------------- ### Mass Bundle Build Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_build.md Use this command to initiate the build process for your Massdriver bundles. Specify the path to the bundle directory if it's not the current directory. ```bash mass bundle build [path] [flags] ``` -------------------------------- ### Create a New OCI Repository Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_create.md Use this command to create a new OCI repository. Specify the repository name and optionally provide custom attributes or an artifact type. ```bash mass repository create [flags] ``` ```bash mass repository create --attributes owner=data,service=database ``` ```bash mass repository create --type bundle ``` -------------------------------- ### Mass Instance Version Command Syntax Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_version.md This shows the general syntax for the 'mass instance version' command, specifying the instance ID and the desired version. ```shell mass instance version @ [flags] ``` -------------------------------- ### Load Fish Autocompletion Permanently Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_completion_fish.md This command saves the autocompletion script to a file in the fish completions directory, making it available for all new shell sessions. A new shell must be started for the changes to take effect. ```bash mass completion fish > ~/.config/fish/completions/mass.fish ``` -------------------------------- ### Mass Bundle Build Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_build.md Configure the build process using command-line flags. The bundle-directory flag specifies the location of the massdriver.yaml file. ```bash -b, --bundle-directory string Path to a directory containing a massdriver.yaml file. (default ".") -h, --help help for build ``` -------------------------------- ### Create Environment with Slug Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_environment_create.md Use this command to create a new environment using its slug. The project is inferred from the slug. ```bash mass environment create dbbundle-test ``` -------------------------------- ### Scaffold a New Bundle Interactively Source: https://context7.com/massdriver-cloud/mass/llms.txt Create a new bundle directory from an official template using an interactive wizard. This command fetches available templates and resource types from the platform. ```sh # Interactive wizard (fetches available templates and resource types from the platform) mass bundle new ``` -------------------------------- ### Mass Resource Create Command Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_create.md Available options for the 'mass resource create' command include specifying the resource file, name, and type. Use -h for help. ```shell -f, --file string Resource file -h, --help help for create -n, --name string Resource name -t, --type string Resource type ``` -------------------------------- ### Export Instance Command Usage Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_export.md Use this command to export a specific instance. Replace `--` with the actual slugs for your project, environment, and instance. ```bash mass instance export -- ``` -------------------------------- ### Create a New Bundle OCI Repository Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_create.md Use this command to create a new bundle OCI repository. You can specify custom attributes to categorize the bundle. ```bash mass bundle create aws-aurora-postgres -a owner=data,service=database ``` -------------------------------- ### Mass Project Export Command with Flags Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_export.md Shows the general command structure for exporting a project, including placeholders for the project slug and any available flags. ```bash mass project export [project] [flags] ``` -------------------------------- ### Help Option for List Command Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_template_list.md Displays the help information for the 'mass bundle template list' command. This includes a list of available options. ```shell -h, --help help for list ``` -------------------------------- ### Mass Docs Command Synopsis Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_docs.md This is the basic command structure for generating documentation. ```bash mass docs [flags] ``` -------------------------------- ### Create Repository Source: https://context7.com/massdriver-cloud/mass/llms.txt Creates a new OCI repository, typically for bundles. Custom attributes can be added using the '-a' flag. ```sh # Create a new bundle repository mass repository create aws-aurora-postgres --type bundle -a owner=data,service=database # ✅ Repository `aws-aurora-postgres` created (type: bundle) ``` -------------------------------- ### Mass CLI Project List Command Synopsis Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_list.md This shows the general syntax for the 'mass project list' command, indicating it accepts flags for additional options. Use this to understand the command's structure. ```bash mass project list [flags] ``` -------------------------------- ### List OCI Repositories Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_list.md Use this command to list all OCI repositories managed by Mass. Various flags can be used to filter and sort the results. ```bash mass repository list [flags] ``` -------------------------------- ### Project Export File Structure Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_project_export.md Illustrates the tiered file structure used for exporting project data, organized by project, environment, and instance slugs. ```bash project ├── env1 │ ├── instance1 │ │ ├── │ ├── instance2 │ │ ├── ├── env2 │ ├── instance1 │ │ ├── │ ├── instance2 │ │ ├── ``` -------------------------------- ### Link Components with Latest Versions Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_component_link.md Use this command to link the output of a source component to the input of a destination component, defaulting to the latest versions of both components. ```shell mass component link ecomm-db.authentication ecomm-app.database ``` -------------------------------- ### Download Resource in JSON Format Explicitly Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_download.md Download a resource and explicitly specify the output format as JSON using the --format flag. ```bash mass resource download 12345678-1234-1234-1234-123456789012 --format json ``` -------------------------------- ### List Repositories Source: https://context7.com/massdriver-cloud/mass/llms.txt Lists all OCI repositories. Supports filtering by type, searching by name, and sorting by creation date in ascending or descending order. ```sh # List all repositories mass repository list # Filter and sort mass repository list --type bundle --search postgres --sort created_at --order desc ``` -------------------------------- ### Publish Resource Type from JSON Source: https://github.com/massdriver-cloud/mass/blob/main/docs/helpdocs/type/publish.md Use this command to publish a resource type defined in a JSON file. Ensure the file path is correct. ```bash # Publish a resource type from a JSON file mass resource-type publish my-resource-type.json ``` -------------------------------- ### Search for Bundles Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_list.md To find specific bundles, use the --search flag followed by keywords. The results are ranked by relevance by default. ```bash mass bundle list --search postgres ``` -------------------------------- ### List Deployments for an Instance Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_deployment_list.md Use this command to list the most recent deployments for a specified instance. The default limit is 10 deployments, but this can be increased up to 100 using the --limit flag. ```shell mass deployment list [--limit N] ``` ```shell # Ten most recent deployments for the ecomm-prod-db instance mass deployment list ecomm-prod-db ``` ```shell # Last 50 mass deployment list ecomm-prod-db --limit 50 ``` ```shell mass deployment list [flags] ``` ```shell mass deployment list ecomm-prod-db --limit 25 ``` -------------------------------- ### List Repository Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_list.md These are the available flags for the 'mass repository list' command. They allow for filtering by name, prefix, and artifact type, as well as full-text search and output formatting. ```bash -h, --help help for list -n, --name string Filter by exact repository name --order string Sort order (asc, desc) (default "asc") -o, --output string Output format (table, json) (default "table") --prefix string Filter by repository name prefix -s, --search string Full-text search across name, readme, and changelog --sort string Sort field (name, created_at) -t, --type string Filter by artifact type (bundle) ``` -------------------------------- ### Set Instance Version Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_instance_version.md Use this command to set the version for a specific instance. The instance slug can be found in the instance info panel and is typically a combination of project, environment, and manifest slugs. ```shell mass instance version api-prod-db@latest ``` -------------------------------- ### Mass Bundle Import Command Syntax Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_import.md The general syntax for the mass bundle import command, including optional path and flags. ```shell mass bundle import [path] [flags] ``` -------------------------------- ### Publish Bundle to Massdriver Registry Source: https://context7.com/massdriver-cloud/mass/llms.txt Build, lint (optionally skipped), and push the bundle as an OCI artifact to the Massdriver registry. Use `--development` for non-production releases. ```sh # Standard publish (lints automatically) mass bundle publish # Publish from a specific directory, fail on lint warnings, development release mass bundle publish \ --bundle-directory ./bundles/aws-aurora-postgres \ --development \ --fail-warnings # Skip lint for speed (not recommended in CI) mass bundle publish --skip-lint ``` -------------------------------- ### Mass Bundle New Command Usage Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_new.md The general syntax for the `mass bundle new` command, which can be followed by various flags to customize bundle creation. ```shell mass bundle new [flags] ``` -------------------------------- ### Scaffold Bundle from Existing Params Source: https://context7.com/massdriver-cloud/mass/llms.txt Create a new bundle and seed its parameters from an existing OpenTofu module directory. This is useful for migrating existing infrastructure code. ```sh # Seed params from an existing OpenTofu module mass bundle new \ --name my-lambda \ --template-name opentofu \ --params-directory ./terraform-lambda # Output: Bundle "aws-aurora-postgres" created successfully at path "./bundles/aws-aurora-postgres" ``` -------------------------------- ### Mass Resource Create Command Synopsis Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_resource_create.md This is the general synopsis for the 'mass resource create' command. It can be used with various flags to specify resource details. ```shell mass resource create [flags] ``` -------------------------------- ### Create a new OCI repository Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_repository_create.md Use the `mass repository create` command to create a new OCI repository. You must provide a name for the repository. Optional flags allow for specifying custom attributes and the artifact type. ```APIDOC ## mass repository create Create a new OCI repository ``` mass repository create [flags] ``` ### Options ``` -a, --attributes stringToString Custom attributes (e.g. -a owner=data,service=database) (default []) -h, --help help for create -t, --type string Artifact type (bundle) ``` ``` -------------------------------- ### Mass Bundle Publish Command Options Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_publish.md Available options for the mass bundle publish command. Use these flags to customize the publishing behavior, such as setting the bundle directory or controlling release type. ```bash -b, --bundle-directory string Path to a directory containing a massdriver.yaml file. (default ".") -d, --development Publish the bundle as a development release. -f, --fail-warnings Fail on warnings from the linter -h, --help help for publish -s, --skip-lint Skip linting ``` -------------------------------- ### Expected Directory Structure for Templates Source: https://github.com/massdriver-cloud/mass/blob/main/docs/generated/mass_bundle_template_list.md Illustrates the expected organization of bundle templates within the configured templates path. Each template should have a 'massdriver.yaml' file. ```tree templates_path/ opentofu/ massdriver.yaml src/ ... helm-chart/ massdriver.yaml chart/ ... ```