## Motivation and Context - Enable all contributors to manage the infrastructure - Enable deployments without error-prone manual intervention ## How Has This Been Tested? Tested by deploying from this test branch, getting CI green and seeing changes were applied ## Breaking Changes <!-- Will users need to update their code or configurations? --> ## Types of changes <!-- What types of changes does your code introduce? Put an `x` in all the boxes that apply: --> - [ ] Bug fix (non-breaking change which fixes an issue) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] Documentation update ## Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. --> - [x] I have read the [MCP Documentation](https://modelcontextprotocol.io) - [x] My code follows the repository's style guidelines - [x] New and existing tests pass locally - [x] I have added appropriate error handling - [ ] I have added or updated documentation as needed
40 lines
No EOL
1.6 KiB
Makefile
40 lines
No EOL
1.6 KiB
Makefile
.PHONY: help build local-login local-preview local-up staging-login staging-preview staging-up prod-login prod-preview prod-up
|
|
|
|
# Default target
|
|
help: ## Show this help message
|
|
@echo "Available targets:"
|
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf " %-20s %s\n", $$1, $$2}'
|
|
|
|
# Build the Go binary
|
|
build: ## Build the Pulumi Go program
|
|
go build
|
|
|
|
# Local stack commands
|
|
local-login: ## Login to local Pulumi backend
|
|
pulumi login --local
|
|
|
|
local-preview: build local-login ## Preview local infrastructure changes
|
|
PULUMI_CONFIG_PASSPHRASE="" pulumi preview --stack local
|
|
|
|
local-up: build local-login ## Deploy local infrastructure
|
|
PULUMI_CONFIG_PASSPHRASE="" pulumi up --yes --stack local
|
|
|
|
# Staging stack commands
|
|
staging-login: ## Login to staging Pulumi backend
|
|
pulumi login gs://mcp-registry-staging-pulumi-state
|
|
|
|
staging-preview: build staging-login ## Preview staging infrastructure changes
|
|
PULUMI_CONFIG_PASSPHRASE_FILE=passphrase.staging.txt pulumi preview --stack gcpStaging
|
|
|
|
staging-up: build staging-login ## Deploy staging infrastructure
|
|
PULUMI_CONFIG_PASSPHRASE_FILE=passphrase.staging.txt pulumi up --yes --stack gcpStaging
|
|
|
|
# Production stack commands
|
|
prod-login: ## Login to production Pulumi backend
|
|
pulumi login gs://mcp-registry-prod-pulumi-state
|
|
|
|
prod-preview: build prod-login ## Preview production infrastructure changes
|
|
PULUMI_CONFIG_PASSPHRASE_FILE=passphrase.prod.txt pulumi preview --stack gcpProd
|
|
|
|
prod-up: build prod-login ## Deploy production infrastructure
|
|
PULUMI_CONFIG_PASSPHRASE_FILE=passphrase.prod.txt pulumi up --yes --stack gcpProd
|