Skip to content

Commit db9dd32

Browse files
authored
Add pipelines installation instructions for custom GitLab instances (#2547)
* Add pipelines installation instructions for custom GitLab instances * Fix link error in build
1 parent 94dc6ae commit db9dd32

File tree

2 files changed

+24
-13
lines changed

2 files changed

+24
-13
lines changed

docs/2.0/docs/pipelines/installation/addinggitlabrepo.md

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,15 @@ Before you begin, make sure you have:
1313
- Completed the [Pipelines Auth setup for GitLab](/2.0/docs/pipelines/installation/viamachineusers#gitlab) and setup a machine user with appropriate PAT tokens
1414
- Local access to Gruntwork's GitHub repositories, specifically [boilerplate](https://github.com/gruntwork-io/boilerplate) and the [architecture catalog](https://github.com/gruntwork-io/terraform-aws-architecture-catalog/)
1515

16+
:::info
17+
18+
**For custom GitLab instances only**: You must [fork](https://docs.gitlab.com/user/project/repository/forking_workflow/#create-a-fork) Gruntwork's public [Pipelines workflow project](https://gitlab.com/gruntwork-io/pipelines-workflows) into your own GitLab instance.
19+
20+
This is necessary because Gruntwork Pipelines uses [GitLab CI/CD components](/2.0/docs/pipelines/architecture/ci-workflows), and GitLab requires components to reside within the [same GitLab instance as the project referencing them](https://docs.gitlab.com/ci/components/#use-a-component).
21+
22+
When creating the fork, we recommend configuring it as a public mirror of the original Gruntwork project and ensuring that tags are included.
23+
:::
24+
1625
## Setup Process Overview
1726

1827
Setting up Gruntwork Pipelines for GitLab involves these main steps:
@@ -32,9 +41,12 @@ Setting up Gruntwork Pipelines for GitLab involves these main steps:
3241
To use Gruntwork Pipelines with GitLab, your group needs authorization from Gruntwork:
3342

3443
1. Email your Gruntwork account manager or [email protected] with:
35-
- Your GitLab group name(s) e.g. <CustomizableValue id="GITLAB_GROUP_NAME" />
36-
- The GitLab instance URL (e.g., https://gitlab.com)
37-
- Your organization name
44+
45+
```
46+
GitLab group name(s): $$GITLAB_GROUP_NAME$$ (e.g. acme-io)
47+
GitLab instance URL: $$GITLAB_INSTANCE$$ (e.g., https://gitlab.acme.io)
48+
Organization name: $$ORGANIZATION_NAME$$ (e.g. Acme, Inc.)
49+
```
3850
3951
2. Wait for confirmation that your group has been authorized.
4052
@@ -94,11 +106,11 @@ First, you'll need to install [mise](https://mise.jdx.dev/), a powerful environm
94106

95107
4. Download the sample [vars.yaml file](https://github.com/gruntwork-io/terraform-aws-architecture-catalog/blob/main/examples/gitlab-pipelines/vars.yaml) to the root of <CustomizableValue id="REPOSITORY_NAME" />
96108

97-
4. Edit the `vars.yaml` file to customize it for your environment
109+
4. Edit the `vars.yaml` file to customize it for your environment. If using a custom GitLab instance, update any custom instance variables.
98110

99111
5. `cd` to the root of <CustomizableValue id="REPOSITORY_NAME" /> where you wish to install Gruntwork Pipelines. Run the boilerplate tool to generate your repository structure:
100112
```bash
101-
boilerplate --template-url "[email protected]:gruntwork-io/terraform-aws-architecture-catalog.git//templates/gitlab-pipelines-infrastructure-live-root/?ref=v2.12.10" --output-folder . --var-file vars.yaml --non-interactive
113+
boilerplate --template-url "[email protected]:gruntwork-io/terraform-aws-architecture-catalog.git//templates/gitlab-pipelines-infrastructure-live-root/?ref=v2.13.0" --output-folder . --var-file vars.yaml --non-interactive
102114
```
103115

104116
If you encounter SSH issues, verify your SSH access to GitHub:
@@ -119,9 +131,8 @@ First, you'll need to install [mise](https://mise.jdx.dev/), a powerful environm
119131

120132
### Step 4: Install AWS OIDC Provider and IAM Roles for Pipelines
121133

122-
123-
1. Navigate to the `_global` folder under each account in your repository and review the Terraform files that were created:
124-
- The GitLab OIDC identity provider in AWS
134+
1. Navigate to the `_global` folder under each account in your repository and review the Terragrunt files that were created:
135+
- The GitLab OIDC identity provider in AWS. **Note:** If using a custom GitLab instance, ensure the `URL` and `audiences` inputs in this configuration are correct.
125136
- IAM roles for your the account (`root-pipelines-plan` and `root-pipelines-apply`)
126137

127138
2. Apply these configurations to create the required AWS resources:

sidebars/docs.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -251,20 +251,20 @@ const sidebar = [
251251
type: "doc",
252252
id: "2.0/docs/pipelines/installation/branch-protection",
253253
},
254-
]
254+
],
255255
},
256256
{
257257
type: "category",
258258
label: "GitLab",
259259
collapsed: false,
260260
items: [
261261
{
262-
label: "Adding Pipelines to a GitLab Repository",
262+
label: "Adding Pipelines to a GitLab Project",
263263
type: "doc",
264264
id: "2.0/docs/pipelines/installation/addinggitlabrepo",
265265
},
266-
]
267-
}
266+
],
267+
},
268268
],
269269
},
270270
{
@@ -417,7 +417,7 @@ const sidebar = [
417417
type: "doc",
418418
id: "2.0/docs/accountfactory/concepts/delegated-repositories",
419419
},
420-
]
420+
],
421421
},
422422
{
423423
label: "Architecture",

0 commit comments

Comments
 (0)