Deploying - using CLI
Prerequisites
To deploy a git project using Stacktape:
You must have a Stacktape account. If you don't have an account, please sign up
You must have an AWS account connected to your Stacktape organization. Connecting your account takes ~2 minutes. You can connect the account on AWS accounts page in the console
1. Install Stacktape
Copy
iwr https://installs.stacktape.com/windows.ps1 -useb | iex
After the installation is complete, you might need to manually add Stacktape bin folder to PATH environment variable. To do it, follow the instruction printed to the terminal.
1.1 Log in to Stacktape
2. Configure your stack
To write your configuration, you have 3 options:
2.1 - ase a starter project
- Choose one of the starter projects with a pre-configured Stacktape configuration.
2.2 - use the config editor
The easiest and most comfortable way to configure your Stacktape config is to use the interactive config editor
To use it, head over to the console, select Any project using CLI
from the dropdown
menu in the top right corner that appears after clicking on the Deploy new project
button.
On the second step, you'll be able to use the config editor to write your config.
2.3 - follow a tutorial
- You can also follow one of the step-by-step tutorials: Fullstack Next.js T3 app or Web API
2.4 - Write the config manually
You'll need to create a configuration file named stacktape.yml
or stacktape.ts
in the root directory of your
project.
To make this process easier, you can install
Stacktape VScode extension. It
provides validation, autocompletion, suggestions and more. The name of the extension is Stacktape
.
3 - Deploy
Once you've successfully configured your stack, you can deploy it very easily - by a single command:
Copy
stacktape deploy --region <<region> --stage <<stage>> --projectName <<projectName>>
The arguments required by the command have the following meaning:
region - the code of one of the 33 available AWS regions. For people in US, this will be likely
us-east-1
, and for EU customerseu-west-1
.stage - arbitrary name of the stage (also called environment). E.g.
production
,staging
ordev-john
.projectName - name of the project this stack will belong to. This is used to distinguish your projects from each other in the Stacktape console. Use arbitrary, descriptive name, e.g.
todo-app
,pet-eshop
, etc. In most cases, this is identical with the name of the git repository.3.1 - Monitor the deployment
Stacktape continuously prints the information about the ongoing deployment to your terminal.
Once the deployment is finished, you'll be able to view the stack details in the Stacktape console.
At this point, you have a successfully deployed, production-grade AWS application, that follows all of the recommended AWS best practices.