Files
atlantis/runatlantis.io/docs/using-atlantis.md
Ken Kaizu ab327a2238 docs: add more commands in using-atlantis.md (#2808)
* docs: add more commands in using-atlantis.md

* docs: add how-atlantis-works child page links

* docs: using-atlantis shows available executable names

* Update runatlantis.io/docs/using-atlantis.md

* remove run help doc, because this feature might be deprecated

* Apply suggestions from code review

* Update runatlantis.io/docs/using-atlantis.md

* revert run help command usage
2022-12-18 09:42:19 -06:00

150 lines
5.0 KiB
Markdown

# Using Atlantis
Atlantis triggers commands via pull request comments.
![Help Command](./images/pr-comment-help.png)
::: tip
You can use following executable names.
* `atlantis help`
* `atlantis` is executable name. You can configure by [Executable Name](/docs/server-configuration.html#executable-name).
* `run help`
* `run` is a global executable name.
* `@GithubUser help`
* `@GithubUser` is the VCS host user which you connected to Atlantis by user token.
:::
Currently, Atlantis supports the following commands.
[[toc]]
---
## atlantis help
```bash
atlantis help
```
### Explanation
View help
---
## atlantis version
```bash
atlantis version
```
### Explanation
Print the output of 'terraform version'.
---
## atlantis plan
```bash
atlantis plan [options] -- [terraform plan flags]
```
### Explanation
Runs `terraform plan` on the pull request's branch. You may wish to re-run plan after Atlantis has already done
so if you've changed some resources manually.
### Examples
```bash
# Runs plan for any projects that Atlantis thinks were modified.
# If an `atlantis.yaml` file is specified, runs plan on the projects that
# were modified as determined by the `when_modified` config.
atlantis plan
# Runs plan in the root directory of the repo with workspace `default`.
atlantis plan -d .
# Runs plan in the `project1` directory of the repo with workspace `default`
atlantis plan -d project1
# Runs plan in the root directory of the repo with workspace `staging`
atlantis plan -w staging
```
### Options
* `-d directory` Which directory to run plan in relative to root of repo. Use `.` for root.
* Ex. `atlantis plan -d child/dir`
* `-p project` Which project to run plan for. Refers to the name of the project configured in the repo's [`atlantis.yaml` file](repo-level-atlantis-yaml.html). Cannot be used at same time as `-d` or `-w` because the project defines this already.
* `-w workspace` Switch to this [Terraform workspace](https://developer.hashicorp.com/terraform/language/state/workspaces) before planning. Defaults to `default`. If not using Terraform workspaces you can ignore this.
* `--verbose` Append Atlantis log to comment.
::: warning NOTE
A `atlantis plan` (without flags), like autoplans, discards all plans previously created with `atlantis plan` `-p`/`-d`/`-w`
:::
### Additional Terraform flags
If you need to run `terraform plan` with additional arguments, like `-target=resource` or `-var 'foo-bar'` or `-var-file myfile.tfvars`
you can append them to the end of the comment after `--`, ex.
```
atlantis plan -d dir -- -var foo='bar'
```
If you always need to append a certain flag, see [Custom Workflow Use Cases](custom-workflows.html#adding-extra-arguments-to-terraform-commands).
---
## atlantis apply
```bash
atlantis apply [options] -- [terraform apply flags]
```
### Explanation
Runs `terraform apply` for the plan that matches the directory/project/workspace.
::: tip
If no directory/project/workspace is specified, ex. `atlantis apply`, this command will apply **all unapplied plans from this pull request**.
This includes all projects that have been planned manually with `atlantis plan` `-p`/`-d`/`-w` since the last autoplan or `atlantis plan` command.
:::
### Examples
```bash
# Runs apply for all unapplied plans from this pull request.
atlantis apply
# Runs apply in the root directory of the repo with workspace `default`.
atlantis apply -d .
# Runs apply in the `project1` directory of the repo with workspace `default`
atlantis apply -d project1
# Runs apply in the root directory of the repo with workspace `staging`
atlantis apply -w staging
```
### Options
* `-d directory` Apply the plan for this directory, relative to root of repo. Use `.` for root.
* `-p project` Apply the plan for this project. Refers to the name of the project configured in the repo's [`atlantis.yaml` file](repo-level-atlantis-yaml.html). Cannot be used at same time as `-d` or `-w`.
* `-w workspace` Apply the plan for this [Terraform workspace](https://developer.hashicorp.com/terraform/language/state/workspaces). If not using Terraform workspaces you can ignore this.
* `--auto-merge-disabled` Disable [automerge](automerging.html) for this apply command.
* `--verbose` Append Atlantis log to comment.
### Additional Terraform flags
Because Atlantis under the hood is running `terraform apply plan.tfplan`, any Terraform options that would change the `plan` are ignored, ex:
* `-target=resource`
* `-var 'foo=bar'`
* `-var-file=myfile.tfvars`
They're ignored because they can't be specified for an already generated planfile.
If you would like to specify these flags, do it while running `atlantis plan`.
---
## atlantis unlock
```bash
atlantis unlock
```
### Explanation
Removes all atlantis locks and discards all plans for this PR.
To unlock a specific plan you can use the Atlantis UI.
---
## atlantis approve_policies
```bash
atlantis approve_policies
```
### Explanation
Approves all current policy checking failures for the PR.
See also [policy checking](/docs/policy-checking.html).
### Options
* `--verbose` Append Atlantis log to comment.