Releases: runatlantis/atlantis
v0.4.13
Description
This release is focused on quick-wins, bugfixes and one new feature that allows
users to require pull requests be "mergeable", before allowing for atlantis apply
.
The mergeable apply requirement is very useful for GitHub users where it allows
them to require pull requests be approved by specific users or require certain
status checks to pass. See https://www.runatlantis.io/docs/apply-requirements.html#mergeable for
more information.
Diff: v0.4.12...v0.4.13
Features
-
Introduce a new (optional)
mergeable
apply requirement that requires pull requests to be mergeable prior to allowingapply
to run. (Fixes #43) -
If users have workspaces configured for a directory via an
atlantis.yaml
file, only allow
commands to be run on those workspaces. All commands attempted to be run on different workspaces will error out.For example, if I have an
atlantis.yaml
file:version: 2 projects: - dir: mydir workspace: default - dir: mydir workspace: staging
Then I can run
atlantis apply -d mydir -w default
andatlantis apply -d mydir -w staging
but I will receive an error if I runatlantis apply -d mydir -w somethingelse
. -
If users are setting the
name
key for their projects inatlantis.yaml
, then
include the project name in the comment output so it's easier to identify which
plan/apply output is for which project. (Fixes #353) -
Bump the Terraform version in the Docker image to
0.11.11
. -
Tweak logging to add timezone to the timestamp and make the output more readable. (#402)
-
Warn users if running
atlantis apply -- -target=myresource
because-target
can
only be specified duringatlantis plan
. (Fixes #399)
Bugfixes
- If
terraform plan
returns an error, print the error to the pull request. (#381) - Split Bitbucket Server comments into multiple comments if over the max size. (Fixes #280)
- Fix issue where if users specified
--gitlab-hostname
without a scheme then Atlantis wouldn't parse the URL correctly. (#377) - Give better error message if GitLab users are commenting on commits instead of a merge request. (Fixes #150, #390)
- If an error occurs early in request processing, comment that error back on the pull request.
Previously, we were commenting back on errors but not for errors very early in the processing. (Fixes #398)
Backwards Incompatibilities / Notes:
-
The version of Terraform installed in the
runatlantis/atlantis
Docker image
is now0.11.11
. Previously it was0.11.10
. -
If you are a) using an
atlantis.yaml
file and b) defining Terraform workspaces
and c) running plan and apply against workspaces that were not defined in the
atlantis.yaml
file, then this no longer works.You will now need to define all the workspaces in the
atlantis.yaml
file.
For example, say you had the following config:version: 2 projects: - dir: mydir workspace: production
And you used to run:
atlantis plan -d mydir -w anotherworkspace atlantis apply -d mydir -w anotherworkspace
For this to work now, you need to add the
anotherworkspace
workspace to your
atlantis.yaml
file:version: 2 projects: - dir: mydir workspace: production - dir: mydir workspace: anotherworkspace
Docker
v0.4.12
v0.4.12
Description
Small feature and bug fix release. If you're using GitLab <11.1 then your
comment formatting is fixed!
Diff: v0.4.11...v0.4.12
Features
- Atlantis can now be hosted behind a path-based router and its UI will still
render correctly. For example, you could host atlantis at mydomain.com/mypath,
then runatlantis server --atlantis-url https://mydomain.com/mypath
and when
atlantis renders its UI, all the URLs will have the/mypath
prefix so the UI
renders properly. (Fixes #213) - Log warning if GitLab hostname isn't resolvable. (Fixes #359)
- Support running our official Docker image
runatlantis/atlantis
on OpenShift. OpenShift runs images
with random uids so we needed to build in support for that. (Fixes #345)
Bugfixes
- If the output is too long for a single GitHub comment, maintain formatting when
splitting into multiple comments. (Fixes #111) - Fix bug with using the pagination API in BitBucket. (#354)
- If using GitLab < 11.1 then don't use expandable markdown comments. (Fixes #315)
- Fix output from custom steps that came before the plan step from being removed. (#367)
Backwards Incompatibilities / Notes:
We made changes to the base image (runatlantis/atlantis-base
) that
runatlantis/atlantis
is built off of. These changes should not affect your
running of atlantis unless you're building your own custom images and were relying
on specific user permissions. Even then we don't anticipate any problems.
These are the changes in detail:
-
Previously, the permissions of
/home/atlantis
were:$ ls -la /home/atlantis/ drwxr-sr-x 2 atlantis atlantis 4096 Sep 13 22:49 .
Now they are:
$ ls -la /home/atlantis/ drwxrwxr-x 2 atlantis root 4096 Nov 28 21:22 .
- The directory is now owned by the
root
group. - Its group permissions now include
w
andx
.
This was needed because OpenShift runs Docker images as random uid's under
the root group and so now those random uid's can use/home/atlantis
as their
data directory. - The directory is now owned by the
-
Previously, the
atlantis
user was only part of its own group:$ gosu atlantis sh $ whoami atlantis $ groups atlantis
Now it's also part of the
root
group:$ gosu atlantis sh $ groups atlantis root
-
Previously, the permissions for
/etc/passwd
were:$ ls -la /etc/passwd -rw-r--r-- 1 root root 1284 Sep 13 22:49 /etc/passwd
Now the permissions are:
$ ls -la /etc/passwd -rw-rw-r-- 1 root root 1284 Nov 28 21:22 /etc/passwd
The
w
group permission was added so that in OpenShift, the random uid can write
their own login entry (https://github.com/runatlantis/atlantis/blob/master/docker-entrypoint.sh#L28)
which is required becauseterraform
expects the running user to have an entry
in/etc/passwd
.
Docker
v0.4.11
Description
Medium sized release that updates the Terraform version and makes terraform plan
output smaller by removing the Refreshing...
output.
Diff: v0.4.10...v0.4.11
Features
- Upgraded Docker image to use Terraform 0.11.10
terraform plan
output is shorter now thanks to remove theRefreshing...
output (#339)- Project names specified in
atlantis.yaml
can now contain/
's. This is useful
if you want to name your projects similar to the directories they're in. (Fixes #253) - Added new flag
--silence-whitelist-errors
which prevents Atlantis from comment back on pull requests
from non-whitelisted repos. This is useful if you want to add the Atlantis webhook to a whole organization
and then control which repos are actioned on via the whitelist. (Fixes #312) - The message when the project is locked is now more helpful. (#336)
- Run
terraform plan
with-var atlantis_repo_owner=runatlantis -var atlantis_repo_name=atlantis -var atlantis_pull_num=10
(if the repo was runatlantis/atlantis) (#300)
Bugfixes
- Quote plan filenames so that Bitbucket projects with spaces in their names still work (Fixes #302)
Backwards Incompatibilities / Notes:
-
Atlantis now runs
terraform plan
with-var atlantis_repo_owner=runatlantis \ -var atlantis_repo_name=atlantis \ -var atlantis_pull_num=10
(in this example the repo that Atlantis is running on is runatlantis/atlantis).
If you were using those variables in your terraform code:
variable "atlantis_repo_owner" { default = "my_default" }
Then Atlantis will be overriding those variables with its own values. To prevent
this, you need to rename your variables.If you aren't using those variables then this change won't affect you.
Docker
runatlantis/atlantis:v0.4.11
v0.4.10
v0.4.10
Description
Small bugfix release to fix issues with new comment format.
Diff: v0.4.9...v0.4.10
Features
None
Bugfixes
- Fix bad comment rendering (#294)
- Fix
plan
not working on Bitbucket Server when repo owner contains spaces (#290)
Backwards Incompatibilities / Notes:
None
Docker
runatlantis/atlantis:v0.4.10
v0.4.9
v0.4.9
Description
This release is mostly focused on changing how comments look. Terraform output
is now automatically hidden if it's over 12 lines long:
Also the red and green highlighting for added and removed resources is fixed:
Diff: v0.4.8...v0.4.9
Features
- Terraform output over 12 lines is hidden in comment until expanded
terraform plan
output is highlighted correctly- Terraform is now executed with
-var atlantis_repo={repo name} -var atlantis_pull_num {pull num}
.
This will allow users to trace Atlantisterraform
executions in CloudTrail back to a specific
user and pull request if using assume role by creating a specific name for the session Terraform initiates.
provider "aws" {
assume_role {
role_arn = "arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME"
session_name = "${var.atlantis_user}:${var.atlantis_repo}:${var.atlantis_pull_num}"
}
}
Bugfixes
- Run terraform with
-input=false
(#268).
Backwards Incompatibilities / Notes:
- We set two new Terraform variables:
atlantis_repo
andatlantis_pull_num
. If
you were using variables with those names in your code you will need to rename them
in your code
Docker
runatlantis/atlantis:v0.4.9
v0.4.8
Description
Security release to upgrade the Docker image to the latest version of Alpine linux that fixes
this bug: https://justi.cz/security/2018/09/13/alpine-apk-rce.html
Diff: v0.4.7...v0.4.8
Features
None
Bugfixes
- Change server startup message to INFO from WARN level.
Backwards Incompatibilities / Notes:
None
Docker
runatlantis/atlantis:v0.4.8
v0.4.7
Description
Support GitLab repos nested under multiple levels and use the latest version of Terraform: 0.11.8!
Features
- Support GitLab groups which allow repos to be nested under multiple levels,
ex.gitlab.com/owner/group/subgroup/subsubgroup/repo
- Use latest version of Terraform: 0.11.8 in Docker image
Bugfixes
- When running with
TF_LOG
set, Atlantis will start normally. Previously it
would error out due to attempting to parse the stderr output of theterraform version
command.
Backwards Incompatibilities / Notes:
None
Docker
runatlantis/atlantis:v0.4.7
v0.3.11
v0.3.11
NOTE: This is a patch release! Please use the latest 0.4.* release.
Features
None
Bugfixes
- If the
TF_LOG
environment variable is set, should still be able to start. Previouslyatlantis server
would exit immediately because it couldn't parse the output ofterraform version
.
Backwards Incompatibilities / Notes:
None
Docker
runatlantis/atlantis:v0.3.11
v0.4.6
v0.4.5
Features
atlantis apply
now applies all unapplied plans instead of just the plan in the root directory. (#169)atlantis plan
now plans all modified projects instead of just the root directory.- Plan comments now contain instructions for how to run apply or re-run plan, ex:
▶️ To apply this plan, comment:
atlantis apply -d .
- 🚮 To delete this plan click here
- 🔁 To plan this project again, comment:
atlantis plan -d .
Bugfixes
- Ignore approvals from the pull request author (Bitbucket Cloud only). Fixes (#201)
- When double clicking on a GitHub comment, ex.
GitHub would add two newlines to the end. If this was then pasted into a new
atlantis apply
comment, Atlantis would accept it because of the extra newlines. This has been fixed
and the comment with two newlines will be accepted.
Backwards Incompatibilities / Notes:
atlantis apply
now applies all unapplied plans. Previously it would only apply the plan in the root directory and default workspace.atlantis plan
now plans all modified projects. Previously it would only run plan in the root directory and default workspace.
Docker
runatlantis/atlantis:v0.4.5