Skip to content

Commit 3c5575b

Browse files
authored
Merge branch 'master' into config-reference-updated-0923
2 parents c36fede + 6d6c336 commit 3c5575b

File tree

119 files changed

+12143
-703
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+12143
-703
lines changed

.circleci/config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ jobs:
110110
command: |
111111
cd src-api; rm -r build; rm source/index.html.md
112112
curl https://circleci.com/api/v2/openapi.json > openapi.json
113-
node node_modules/widdershins/widdershins.js --search false --language_tabs 'shell:Curl' 'ruby:Ruby' 'python:Python' 'javascript:Javascript' 'go: Go' --summary openapi.json -o source/index.html.md
113+
node node_modules/widdershins/widdershins.js --environment ../widdershins.apiv2.yml --summary openapi.json -o source/index.html.md
114114
bundle exec middleman build --clean
115115
cp -R build/* ../jekyll/_api/v2
116116
@@ -128,7 +128,7 @@ jobs:
128128
./scripts/build_pdfs.sh
129129
- run:
130130
name: Test with HTMLproofer
131-
command: bundle exec htmlproofer jekyll/_site --allow-hash-href --check-favicon --check-html --disable-external --file-ignore "/docs/ja/2.0/aws-prereq/,/docs/ja/2.0/ops/,/docs/ja/2.0/about-circleci/,/docs/ja/2.0/demo-apps/,/docs/ja/2.0/google-auth/,/docs/ja/2.0/orb-concepts/,/docs/ja/2.0/tutorials/" --empty-alt-ignore | tee $JOB_RESULTS_PATH/htmlproofer-results.txt
131+
command: bundle exec htmlproofer jekyll/_site --allow-hash-href --check-favicon --check-html --disable-external --file-ignore "/docs/ja/2.0/customizations/,/docs/ja/2.0/aws-prereq/,/docs/ja/2.0/ops/,/docs/ja/2.0/about-circleci/,/docs/ja/2.0/demo-apps/,/docs/ja/2.0/google-auth/,/docs/ja/2.0/orb-concepts/,/docs/ja/2.0/tutorials/" --empty-alt-ignore | tee $JOB_RESULTS_PATH/htmlproofer-results.txt
132132
- store_artifacts:
133133
path: release/tmp/
134134
- store_artifacts:
File renamed without changes.

Gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ gem 'jekyll', "3.8.6"
66
gem 'html-proofer'
77
gem "rack", ">= 2.0.6"
88
gem 'asciidoctor'
9-
gem 'asciidoctor-pdf', '~> 1.5.0.beta.2'
9+
gem 'asciidoctor-pdf', '~> 1.5.0.beta.5'
1010
gem 'pygments.rb', '~> 1.1.2'
1111

1212
group :jekyll_plugins do

Gemfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ GEM
1717
httpclient (~> 2.8, >= 2.8.3)
1818
json (>= 1.5.1)
1919
asciidoctor (2.0.10)
20-
asciidoctor-pdf (1.5.0.beta.2)
20+
asciidoctor-pdf (1.5.0.beta.5)
2121
asciidoctor (>= 1.5.3, < 3.0.0)
2222
concurrent-ruby (~> 1.1.0)
2323
prawn (~> 2.2.0)
@@ -180,7 +180,7 @@ PLATFORMS
180180

181181
DEPENDENCIES
182182
asciidoctor
183-
asciidoctor-pdf (~> 1.5.0.beta.2)
183+
asciidoctor-pdf (~> 1.5.0.beta.5)
184184
html-proofer
185185
jekyll (= 3.8.6)
186186
jekyll-algolia (~> 1.0)

README-local-development.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# Local Development Instructions
22

33

4-
There are two ways to work on CircleCI docs locally: with Docker and with Ruby/Bundler.
4+
There are two ways to work on CircleCI docs locally: with Docker and with [Ruby](https://www.ruby-lang.org/en/)/[Bundler](http://bundler.io/).
55

66
## 1. Local Development with Docker (recommended)
77

8-
1. Install Docker for you platform: <https://docs.docker.com/engine/installation/>
8+
1. Install Docker for your platform: <https://docs.docker.com/engine/installation/>
99
2. Clone the CircleCI docs repo: `git clone https://github.com/circleci/circleci-docs.git`
1010
3. Download this file: https://circleci.com/docs/assets/app.bundle-576b5ac91166f5b87d5f6254b647c9182e3468eeea4717c8cdc7ff7304cac0c9.js
1111
4. Rename the file from Step 3 to `app.bundle.js` and save it in the `jekyll/assets/js` directory.
@@ -28,7 +28,7 @@ You're welcome to use [Bundler](http://bundler.io/) to install these gems.
2828

2929
## Building js assets
3030

31-
Our js assets are compiled by webpack and put into a place that the jekyll build can find them.
31+
Our js assets are compiled by webpack and put into a place where the jekyll build can find them.
3232

3333
Anytime you are working on js be sure to run:
3434

@@ -53,13 +53,13 @@ For more info on how to use Jekyll, check out [their docs](https://jekyllrb.com/
5353

5454
## Editing Docs Locally
5555

56-
The docs site includes Bootstrap 3 JS and CSS, so you'll have access to all of its [reusable components](https://v4-alpha.getbootstrap.com/components/alerts/).
56+
The docs site includes Bootstrap 3, JS, and CSS, so you'll have access to all of its [reusable components](https://v4-alpha.getbootstrap.com/components/alerts/).
5757

5858
All docs live in folders named after the version of CircleCI. The only two you need to worry about are `jekyll/_cci1` and `jekyll/_cci2`. These correspond to CircleCI Classic and CircleCI 2.0, respectively.
5959

6060
1. Create a branch and switch to it:
6161

62-
`git checkout -b <branch-name`
62+
`git checkout -b <branch-name>`
6363

6464
2. Add or modify Markdown files in these directories according to our [style guide](CONTRIBUTING#style-guide).
6565

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# CircleCI Documentation [![CircleCI Build Status](https://circleci.com/gh/circleci/circleci-docs.svg?style=shield)](https://circleci.com/gh/circleci/circleci-docs) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/circleci/circleci-docs/master/LICENSE) [![CircleCi Community](https://img.shields.io/badge/community-CircleCI%20Discuss-343434.svg)](https://discuss.circleci.com)
22

3-
This is the public repository for <https://circleci.com/docs/>, a static website generated by [Jekyll](https://jekyllrb.com/). If you find any errors in our docs or have suggestions, please follow our [Contributing Guide](CONTRIBUTING.md) to submit an issue or pull request.
3+
This is the public repository for [CircleCI Docs](https://circleci.com/docs/), a static website generated by [Jekyll](https://jekyllrb.com/). If you find any errors in our docs or have suggestions, please follow our [Contributing Guide](CONTRIBUTING.md) to submit an issue or pull request.
44

55
For minor changes like typos, you can click **Suggest an edit to this page**, located at the bottom of each article. This will take you to the source file on GitHub, where you can submit a pull request for your change through the UI.
66

WIDGETS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ echo "This is 2.0 config."
2727
````
2828

2929
After the string `codetab` you'll see the integer `1`.
30-
This is how tabbed code blocks are group.
30+
This is how tabbed code blocks are grouped.
3131
Everything with `1` appears together in a group.
3232
Everything with `2` will appear in a separate group of tabs, and so on.
3333

docker-compose.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ services:
66
volumes:
77
- ".:/srv/jekyll"
88
ports:
9-
- 4000:4000
10-
- 35729:35729
9+
- 127.0.0.1:4000:4000
10+
- 127.0.0.1:35729:35729
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

jekyll/_cci2/_aws-install.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
= INSTALLATION GUIDE: A guide for installing and upgrading CircleCI Server on AWS.
2-
Docs Team
2+
33
:title-page-background-image: image:pdf-header.png[]
44
:imagesdir: ../assets/img/docs/
55
:doctype: book

jekyll/_cci2/_ops-guide.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
= OPERATIONS GUIDE: A guide for administrators of CircleCI Server installations on AWS and private infrastructure.
2-
Docs Team
2+
33
:media: screen
44
:title-page-background-image: image:pdf-header.png[]
55
:imagesdir: ../assets/img/docs/

jekyll/_cci2/api-job-trigger.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,9 @@ categories: [configuring-jobs]
77
order: 80
88
---
99

10-
1110
This document describes how to trigger jobs using the CircleCI API.
1211

13-
**Note:** Triggering jobs from the API is **not** supported with v2.1.
12+
**Note:** You cannot currently trigger jobs that use 2.1 config from the API.
1413

1514
* TOC
1615
{:toc}

jekyll/_cci2/arch_components.png

39.5 KB
Loading

jekyll/_cci2/arch_server.png

69.2 KB
Loading

jekyll/_cci2/authentication.adoc

Lines changed: 38 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,48 +5,62 @@
55
:toc: macro
66
:toc-title:
77

8-
This document describes how to enable, configure, and test CircleCI to authenticate users with OpenLDAP or Active Directory credentials.
9-
10-
NOTE: LDAP is not supported with existing installations, only clean installations may use LDAP.
8+
This document describes the various ways users of your CircleCI Server installation can get access and authenticate their accounts. Currently OAuth and LDAP are supported as authentication methods.
119

1210
toc::[]
1311

14-
== Prerequisites
12+
== OAuth with Github/GHE
13+
14+
The default method for user account authentication in CircleCI Server is through GitHub.com/GitHub Enterprise OAuth.
15+
16+
Once your installation is up and running, you can simply provide users with a link to access the application - for example `<your-circleci-hostname>.com` – and from there they will be prompted to set up an account by running through the GitHub/GitHub Enterprise OAuth flow and then redirected to the CircleCI login screen.
17+
18+
.CircleCI Server Login Screen
19+
image::server_login.png[Server Login]
20+
21+
== LDAP
22+
As an alternative to the OAuth/GitHub option described above, you can choose LDAP authentication. This section describes how to enable, configure, and test CircleCI to authenticate users with OpenLDAP or Active Directory credentials.
23+
24+
CAUTION: Enabling LDAP will mean it is the **only** way for users to authenticate their account for your installation. Turning on LDAP Authentication is **not recommended for existing installations that previously had users authenticating with GitHub**. Please contact your account team if you need to switch to LDAP for an existing installation.
25+
26+
=== Prerequisites
27+
28+
* Install and configure your OpenLDAP server or Active Directory.
29+
* GitHub Enterprise or GitHub.com must be configured and be the source of organizations and projects to which users have access.
30+
* Install a new instance of CircleCI Server with no existing users.
31+
32+
NOTE: After setting up LDAP, all users must log in to CircleCI with their LDAP credentials. After logging in, each user will then click the Connect button on the Accounts page to connect and authenticate their GitHub account.
1533

16-
* Install and configure your LDAP server and Active Directory.
17-
* GitHub Enterprise must be configured and is the source of organizations and projects to which users have access.
18-
* Install a new instance of CircleCI 2.0 with no existing users.
19-
* Contact https://support.circleci.com[CircleCI support] and file a feature request for CircleCI Server.
20-
// still required?
34+
=== Configure LDAP Authentication
2135

22-
NOTE: After completing this configuration, all users must log in to CircleCI with their LDAP credentials. After logging in to CircleCI, each user will then click the Connect button on the Accounts page to connect and authenticate their GitHub account.
36+
Below is an example configuration to give an idea of the information types required. The example shows OpenLDAP in use but settings will be comparable to what is required when using Active Directory:
2337

24-
== Configure LDAP Authentication
38+
.LDAP Config Example
39+
image::LDAP_example.png[LDAP Example]
2540

2641
This section provides the steps to configure LDAP in the CircleCI Server Management Console:
2742

2843
. Verify access over the LDAP/AD ports to your LDAP/AD servers.
29-
. Log in as administrator to the Management Console for your newly installed CircleCI 2.0 instance.
30-
. Navigate to the Settings page and check the Enable LDAP-only Authentication button. Select either OpenLDAP or Active Directory.
31-
+
32-
.Enable LDAP
33-
image::LDAP.png[Enable LDAP]
44+
. Log in as administrator to the Management Console for your newly installed CircleCI instance.
45+
. Navigate to the Settings page (for example `<your-circleci-hostname>.com:8800`) and scroll down to check the Enable LDAP-only Authentication button. Select either OpenLDAP or Active Directory.
3446
. Fill in your LDAP instance Hostname and port number.
3547
. Select the encryption type (plain text is not recommended).
36-
. Fill in the Search user field with the LDAP admin username using the format `cn=<admin>,dc=<example>,dc=<org>` replacing `admin`, `example`, and `org` with appropriate values for your datacenter.
37-
. Fill in the Search password field with the LDAP admin password.
38-
. Fill in the User search DN field with an approrpiate value using the format `ou=<users>` replacing `users` with the value used in your LDAP instance.
39-
. Fill in the Username field with an approriate unique identifier used for your users, for example, `mail`.
40-
. Fill in the Group Membership field with an appropriate value. By default, the value is `uniqueMember` for OpenLDAP and `member` for Active Directory. This field will list member `dn` for a group.
41-
. Fill in the Group Object Class field with an approrpiate value. By default, the value is `groupOfUniqueNames` for OpenLDAP and `group` for Active Directory. The value of the `objectClass` field indicates a `dn` is a group.
42-
. (Optional) Fill in the Test username and Test password fields with a test email and password for an LDAP user you want to test.
48+
. Fill in the Search user field with the Fully Distinguished Name for a user who is authorized to perform search queries over a LDAP database. Example: `cn=<admin>,dc=<example>,dc=<org>`.
49+
. Fill in the Search password field with the LDAP password for a user from the previous step.
50+
. Fill in the Base DN field with a Distinguished Name for a point in the directory from where CircleCI will be looking for users/groups. Example: `ou=company,dc=example,dc=org`
51+
. Fill in the User search DN field with a Relative Distinguished Name for a point in a directory where CircleCI will find users. Should be relative to the Base DN provided above. Example: `ou=users`.
52+
. Fill in the Username field with a name of an attribute that will be used as a source of usernames for Logging In. Example: `uid` (in this case users will have to use their UID for logging in) or `mail` (in this case users will be using emails for logging in).
53+
. Fill in the Email field with the name of an attribute that will be used as a source of a user email. Example: `mail`
54+
. Fill in the Group Membership field with a name of an attribute that will be used for user membership in a particular group. Example: `uniqueMember`.
55+
. Fill in the Group Object Class field with a name of an Object Class that will identify DN as a group. Example: `groupOfUniqueNames`
56+
. (Optional) Fill in the Test username and Test password fields with a test email and password for an LDAP user you want to test - this is a 3rd party infrastructure and this test option is not always reliable.
4357
. Save the settings.
4458

4559
A user who logs in will be redirected to the Accounts page of the CircleCI application with a Connect button that they must use to connect their GitHub account. After they click Connect, an LDAP section with their user information (for example, their email) on the page will appear and they will be directed to authenticate their GitHub account. After authenticating their GitHub account users are directed to the **Job page** to use CircleCI.
4660

4761
NOTE: A user who has authenticated with LDAP and is then removed from LDAP/AD will be able to access CircleCI as long as they stay logged in (because of cookies). As soon as the user logs out or the cookie expires, they will not be able to log back in. A users' ability to see projects or to run builds is defined by their GitHub permissions. Therefore, if GitHub permissions are synced with LDAP/AD permissions, a removed LDAP/AD user will automatically lose authorization to view or access CircleCI as well.
4862

49-
== Troubleshooting
63+
=== Troubleshooting
5064

5165
Troubleshoot LDAP server settings with LDAP search as follows:
5266

jekyll/_cci2/aws.adoc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ image::storage.png[]
192192
+
193193
NOTE: Due to an issue with our third party tooling, Replicated, the Test SMTP Authentication button is not currently working
194194

195-
. Configure VM service if you plan to use https://circleci.com/docs/2.0/building-docker-images/[Remote Docker] or `machine` executor features. We recommend using an IAM instance profile for authentication, as described in the <<aws-prereq#planning,planning>> section of this document. With this section completed, instances will automatically be provisioned to execute jobs in Remote Docker or use the `machine` executor.
195+
. Configure VM service if you plan to use https://circleci.com/docs/2.0/building-docker-images/[Remote Docker] or `machine` executor features. We recommend using an IAM instance profile for authentication, as described in the <<aws-prereq#planning,planning>> section of this document. With this section completed, instances will automatically be provisioned to execute jobs in Remote Docker or use the `machine` executor. For more information on VM Service and creating custom AMIs for remote Docker and `machine` executor jobs, see our https://circleci.com/docs/2.0/vm-service/#section=server-administration[VM service guide].
196196
+
197197
.Configure VM Service
198198
image::vmprovider.png[]
@@ -201,10 +201,12 @@ You can preallocate instances to always be up and running, reducing the time tak
201201
+
202202
CAUTION: If Docker Layer Caching (DLC) is to be used VM preallocation must be set to `0` – on-demand – for both Remote Docker and `machine` executor.
203203

204-
. If you wish to use AWS Cloudwatch or Datadog for collating metrics for your installation, set this up here. For more infomration see our https://circleci.com/docs/2.0/monitoring/[Monitoring guidance]:
204+
. If you wish to use AWS Cloudwatch or Datadog for collating metrics for your installation, set this up here. For more information see our https://circleci.com/docs/2.0/monitoring/[Monitoring guidance]:
205205
+
206206
.Metrics
207207
image::metrics_setup.png[]
208+
+
209+
You can also customize the metrics received through Telegraf. For more on this see our https://circleci.com/docs/2.0/monitoring/#custom-metrics[Custom Metics] guide.
208210

209211
. Artifacts persist data after a job is completed, and may be used for longer-term storage of your build process outputs. By default, CircleCI Server only allows approved types to be served. This is to protect users from uploading, and potentially executing malicious content. The **Artifacts** setting allows you to override this protection. For more information on safe/unsafe types see our https://circleci.com/docs/2.0/build-artifacts/[Build Artifacts guidance].
210212

jekyll/_cci2/browser-testing.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ jobs:
7979
# CircleCI maintains a library of pre-built images
8080
# documented at https://circleci.com/docs/2.0/circleci-images/
8181
# the working dir is github repo that you need to fork to become owner.
82-
working_directory: ~/nightwatch-saple-for-circleci
82+
working_directory: ~/nightwatch-sample-for-circleci
8383
steps:
8484
- checkout
8585

@@ -97,7 +97,7 @@ jobs:
9797
# Download and cache dependencies
9898
- restore_cache:
9999
keys:
100-
- v1-dependencies-{{ checksum "package.json" }}
100+
- v1-dependencies-{{ checksum "package-lock.json" }}
101101
# fallback to using the latest cache if no exact match is found
102102
- run: npm install
103103
# run tests!
@@ -157,14 +157,14 @@ build:
157157
# Download and cache dependencies
158158
# - restore_cache:
159159
# keys:
160-
# - v1-dependencies-{{ checksum "package.json" }}
160+
# - v1-dependencies-{{ checksum "package-lock.json" }}
161161
# fallback to using the latest cache if no exact match is found
162162
163163
- run: npm install
164164
# - save_cache:
165165
# paths:
166166
# - node_modules
167-
# key: v1-dependencies-{{ checksum "package.json" }}
167+
# key: v1-dependencies-{{ checksum "package-lock.json" }}
168168

169169
# run tests!
170170
- run: node_modules/.bin/nightwatch -e chrome

0 commit comments

Comments
 (0)