Skip to content
This repository has been archived by the owner on Nov 18, 2024. It is now read-only.

Add initial version of vocabulary/terminology #14

Merged
merged 1 commit into from
Feb 27, 2020
Merged

Add initial version of vocabulary/terminology #14

merged 1 commit into from
Feb 27, 2020

Conversation

fdegir
Copy link
Member

@fdegir fdegir commented Jan 28, 2020

Closes: #13

@fdegir
Copy link
Member Author

fdegir commented Jan 28, 2020

It would be great if you can review this PR - especially to make sure there is no mistake in describing the terms listed under the projects or with the mapping.

/cc @bobcatfish @rawlingsj @fungi @tracymiranda @rpaik @aglover @ahpook @zxiiro

docs/vocabulary.md Outdated Show resolved Hide resolved
docs/vocabulary.md Outdated Show resolved Hide resolved
docs/vocabulary.md Outdated Show resolved Hide resolved
@fdegir fdegir requested a review from zxiiro January 28, 2020 16:52
@wvwatson
Copy link

wvwatson commented Jan 28, 2020

It seems that the word pipeline had a good implementation neutral description in Jez Humble's CD book. I think we may need to reference it.

@wvwatson
Copy link

wvwatson commented Jan 28, 2020

"At an abstract level, a deployment pipeline is an automated manifestation of your process for getting software from version control into the hands of your users."

"The deployment pipeline models this process, and its incarnation in a continuous integration and release management tool is what allows you to see and control the progress of each change as it moves from version control through various sets of tests and deployments to release to users."

"For many systems, other forms of testing and so other stages in the release process are also needed, but the subset that is common to all projects is as follows [...] commit stage [...] automated acceptance stage [...] manual test stage [...] deploy stage [...]"

Humble, Jez. Continuous Delivery (Addison-Wesley Signature Series (Fowler)) (p. 106). Pearson Education. Kindle Edition.

Comment on lines 136 to 137
- **Stage**: An atomic building block for a pipeline, describing an action that
the pipeline will perform.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stages are actually not atomic, but Tasks within a Stage are. A Stage can be comprised of Tasks or synthetic stages. For illustration: A deploy stage that targets two datacenters would actually be a composition of two synthetic deploy stages, with each having their own discrete Tasks to create the server groups, and so-on.

  • Task: An atomic function to perform.
  • Stage: A collection of sequential Tasks and composed Stages that describe a higher-level action the Pipeline will perform either linearly or in parallel.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the review Rob. I'll amend the PR, add task to the list and update the definition of stage as you suggested.

Btw, I took this from the Spinnaker concepts webpage so it could perhaps be updated with the details you provided.

https://www.spinnaker.io/concepts/#stage

@fdegir
Copy link
Member Author

fdegir commented Jan 28, 2020

"At an abstract level, a deployment pipeline is an automated manifestation of your process for getting software from version control into the hands of your users."

"The deployment pipeline models this process, and its incarnation in a continuous integration and release management tool is what allows you to see and control the progress of each change as it moves from version control through various sets of tests and deployments to release to users."

"For many systems, other forms of testing and so other stages in the release process are also needed, but the subset that is common to all projects is as follows [...] commit stage [...] automated acceptance stage [...] manual test stage [...] deploy stage [...]"

Humble, Jez. Continuous Delivery (Addison-Wesley Signature Series (Fowler)) (p. 106). Pearson Education. Kindle Edition.

This made me realize that there is no section to document the shared vocabulary we can hopefully come up with. The description of pipeline fits there well. Thanks for the pointer @wavell!

fdegir added a commit to fdegir/spinnaker.github.io that referenced this pull request Jan 28, 2020
This change is a result of discusson on a non-related PR so sending
this PR in order not to miss update in the document.

cdfoundation/sig-interoperability#14 (comment)
fdegir added a commit to fdegir/spinnaker.github.io that referenced this pull request Jan 28, 2020
This PR is a result of a discussion which took place under
another PR. [0] Sending this PR in order to update the Spinnaker
documentation to ensure people who read the documentation can
get the correct information about stages and tasks.

[0] cdfoundation/sig-interoperability#14 (comment)
@e-backmark-ericsson
Copy link
Collaborator

We should also include Argo in the list of tools, since it seems to be quite popular, and what vocabulary is used there: https://github.com/argoproj/argo

@fdegir
Copy link
Member Author

fdegir commented Feb 20, 2020

We should also include Argo in the list of tools, since it seems to be quite popular, and what vocabulary is used there: https://github.com/argoproj/argo

Thanks for the pointer. Will do that.

Copy link
Collaborator

@bobcatfish bobcatfish left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(finally) left some tekton feedback! but like @tracymiranda said, I think going ahead with merging this and having PRs to update it after is probably the way to go


Some of the core Tekton terms are listed below. [[8]]

- **Step**: a specific function to perform.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure if you want this level of detail but there is a 1:1 mapping between a step and a container image, i.e. a step is a container image to execute with arguments, etc.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be valuable to give this type of detail since it is relevant to terminology.

It is better that I leave updating this and other parts of Tekton section to you so you can clarify/detail Tekton terminology in a separate PR.

- **Step**: a specific function to perform.
- **Task**: is a collection of sequential steps you would want to run as part of your
continuous integration flow. A task will run inside a pod on your cluster.
- **ClusterTask**: Similar to Task, but with a cluster scope.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

personally I don't think there is a lot of value in including ClusterTask here since the fact that this exists is very specific to kubernetes (I think we might have a cluster pipeline at this point too), I'd just leave it off the list

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

- **Task**: is a collection of sequential steps you would want to run as part of your
continuous integration flow. A task will run inside a pod on your cluster.
- **ClusterTask**: Similar to Task, but with a cluster scope.
- **Pipeline**: stateless, reusable, paramterized collection of tasks. Tasks linked
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there is a typo where line 185 is meant to continue this line - i'd replace this with something like:

Pipeline: a reusable parameterized directed acyclic graph of Tasks. Task inputs and outputs can be linked by string values (results) and files (workspaces)

(I'm removing PipelineResources from this on purpose since the future of PipelineResources is not clear)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

- **Pipeline**: stateless, reusable, paramterized collection of tasks. Tasks linked
- **PipelineRun**: running instantiations of Pipelines
by input and output PipelineResources
- **Pipeline Resource**: input to or output from tasks
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we might actually remove PipelineResources so i'd leave them off this list for now

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

- **Pipeline Resource**: input to or output from tasks
- **Trigger**: Triggers is a Kubernetes Custom Resource Defintion (CRD) controller
that allows you to extract information from events payloads (a "trigger") to create
Kubernetes resources.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At the moment there is actually no "Trigger" concept, what we do have is:

  1. TriggerTemplates - Templates that describe how to instantiate resources such as PipelineRuns with parameters
  2. TriggerBindings - These describe how to extract values from a json structure using JSON path and use them to provide parameters (e.g. to TriggerTemplates)
  3. EventListeners - Correspond to running endpoints that event systems can call with json payloads

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

| **Jenkins X** | N/A | Step | Stage | Pipeline | Trigger | Agent |
| **Screwdriver** | N/A | Step | Job | Pipeline | Trigger | N/A |
| **Spinnaker** | N/A | Task | Stage | Pipeline | Trigger | Cluster |
| **Tekton** | N/A | Step | Task | Pipeline | Trigger | Resource (?) |
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resource isn't the right value for the last column - maybe "node"? I'm not 100% sure what the last column is meant to represent tho

Might help to choose a term for the top of each column and define it so it's clear what each column is?

(e.g. i'm not exactly sure what to map to "action" since I'm not sure what that column is either)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resource isn't the right value for the last column - maybe "node"? I'm not 100% sure what the last column is meant to represent tho

The trouble I had about the "resource" was what "resource" means for Tekton and Spinnakerso I just included them here with the hope that we can either come up with a new term for the resources that are not same as "node" in Jenkins/GitLab and or add additional text explaining our reasoning. We can fix this in a separate PR.

Might help to choose a term for the top of each column and define it so it's clear what each column is?

(e.g. i'm not exactly sure what to map to "action" since I'm not sure what that column is either)

This is similar to "resource" column - I wasn't sure how to name columns and left them empty so we can determine the name for them.

Copy link
Member Author

@fdegir fdegir left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(finally) left some tekton feedback! but like @tracymiranda said, I think going ahead with merging this and having PRs to update it after is probably the way to go

yes and thanks for the review


Some of the core Tekton terms are listed below. [[8]]

- **Step**: a specific function to perform.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be valuable to give this type of detail since it is relevant to terminology.

It is better that I leave updating this and other parts of Tekton section to you so you can clarify/detail Tekton terminology in a separate PR.

- **Step**: a specific function to perform.
- **Task**: is a collection of sequential steps you would want to run as part of your
continuous integration flow. A task will run inside a pod on your cluster.
- **ClusterTask**: Similar to Task, but with a cluster scope.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

- **Task**: is a collection of sequential steps you would want to run as part of your
continuous integration flow. A task will run inside a pod on your cluster.
- **ClusterTask**: Similar to Task, but with a cluster scope.
- **Pipeline**: stateless, reusable, paramterized collection of tasks. Tasks linked
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

- **Pipeline**: stateless, reusable, paramterized collection of tasks. Tasks linked
- **PipelineRun**: running instantiations of Pipelines
by input and output PipelineResources
- **Pipeline Resource**: input to or output from tasks
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

- **Pipeline Resource**: input to or output from tasks
- **Trigger**: Triggers is a Kubernetes Custom Resource Defintion (CRD) controller
that allows you to extract information from events payloads (a "trigger") to create
Kubernetes resources.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

| **Jenkins X** | N/A | Step | Stage | Pipeline | Trigger | Agent |
| **Screwdriver** | N/A | Step | Job | Pipeline | Trigger | N/A |
| **Spinnaker** | N/A | Task | Stage | Pipeline | Trigger | Cluster |
| **Tekton** | N/A | Step | Task | Pipeline | Trigger | Resource (?) |
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resource isn't the right value for the last column - maybe "node"? I'm not 100% sure what the last column is meant to represent tho

The trouble I had about the "resource" was what "resource" means for Tekton and Spinnakerso I just included them here with the hope that we can either come up with a new term for the resources that are not same as "node" in Jenkins/GitLab and or add additional text explaining our reasoning. We can fix this in a separate PR.

Might help to choose a term for the top of each column and define it so it's clear what each column is?

(e.g. i'm not exactly sure what to map to "action" since I'm not sure what that column is either)

This is similar to "resource" column - I wasn't sure how to name columns and left them empty so we can determine the name for them.

@fdegir
Copy link
Member Author

fdegir commented Feb 27, 2020

Merging this now without adding more.

@e-backmark-ericsson could you add Argo to the doc in a separate PR please?
@wavell same for the description of the pipeline. If you could send a PR, we can discuss and start putting a common terminology in place.

@fdegir fdegir merged commit 45149b0 into cdfoundation:master Feb 27, 2020
@fdegir fdegir deleted the vocabulary branch February 27, 2020 08:48
robzienert pushed a commit to spinnaker/spinnaker.github.io that referenced this pull request May 18, 2020
This PR is a result of a discussion which took place under
another PR. [0] Sending this PR in order to update the Spinnaker
documentation to ensure people who read the documentation can
get the correct information about stages and tasks.

[0] cdfoundation/sig-interoperability#14 (comment)

Co-authored-by: Dave Dorbin <ddorbin@google.com>
edgarulg added a commit to armory-io/spinnaker.github.io that referenced this pull request Jun 18, 2020
* Update index.md

* chore(builds): Use GHActions for PR, master, and release branches. (spinnaker#1697)

* chore(build-status): Build statuses via for-loops (spinnaker#1696)

* chore(build-status): Build statuses via for-loops

* docs(halyard): 1.31.1

* Add Captain's Log (spinnaker#1699)

* add captains log

* update infographic

* Implement syntax suggestions from Travis

* shorten traj copy and put above graphic, keeping it above fold

* add clarifying subtitle good for SEO

* remove unused image refs in head matter

* Update community/captains-log/index.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

* add doc to repos description

Co-authored-by: Dave Dorbin <ddorbin@google.com>
Co-authored-by: brian-armory <53799971+brian-armory@users.noreply.github.com>

* doc(changelog): Spinnaker Version 1.18.2

* Deprecate 1.18.1. (spinnaker#1702)

* docs(stats): Captain's log update (spinnaker#1701)

* update intro and add analyses to events graph

* add analysis and values to data visualization explanations

* fix img title case

* syntax edits

* docs(faq) Deleting Spinnaker Instances (spinnaker#1574)

* remove notices (spinnaker#1704)

* Clarify artifact format usage with spin CLI (spinnaker#1706)

* Clarify artifact format usage with spin CLI

* Update reference/artifacts/index.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

* Update reference/artifacts/index.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

* Update index.md

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* Fix broken link in k8sv1 provider reference (spinnaker#1705)

spinnaker#1703

Co-authored-by: Travis Tomsu <ttomsu@google.com>

* Clarify that SPINNAKER_CONFIG_JSON does not support multi-line… (spinnaker#1709)

* chore(kubernetes): highlight upcoming v1 provider removal (spinnaker#1710)

* chore(kubernetes): link to v1 provider removal rfc

* chore(kubernetes): replace link to clouddriver at master with hash

* chore(kubernetes): replace v2 setup link with reference link

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* docs(templates): Clarify template id reference (spinnaker#1712)

* doc(changelog): Spinnaker Version 1.18.3

* Deprecate 1.18.2. (spinnaker#1713)

* docs(managed-delivery): Document ability to use interactive Slack notifications (spinnaker#1711)

* docs(managed-delivery): Document ability to use interactive Slack notifications

* Address review feedback + minor improvements

* Fix broken link in guides/user/k8s-v2/deploy-helm referense (spinnaker#1714)

* docs(halyard): use the correct JAVA_OPTS default values (spinnaker#1715)

Fixes the least important part of spinnaker/spinnaker#5483

* Add News section & newsletter content, retire "Publications" (spinnaker#1708)

* add link to credentials endpoint (spinnaker#1717)

At this stage in the Managed Delivery Getting Started Guide, this is a
gentle reminder of the endpoint that should be used to see all of the
possible values of the `AWS_ACCOUNT_NAME` placeholder.

Co-authored-by: Emily Burns <emburns@netflix.com>

* Fix typo (spinnaker#1718)

* chore(deps): bump nokogiri from 1.10.5 to 1.10.8 (spinnaker#1719)

Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.10.5 to 1.10.8.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/master/CHANGELOG.md)
- [Commits](sparklemotion/nokogiri@v1.10.5...v1.10.8)

Signed-off-by: dependabot[bot] <support@github.com>

* docs(fix): fix URLs display in Plugin Creators Guide (spinnaker#1722)

changed ref-style link names

Signed-off-by: Aimee Ukasick <aimeeu.opensource@gmail.com>

* doc(changelog): Spinnaker Version 1.18.4

* Deprecate 1.18.3. (spinnaker#1723)

* docs(submitting): add more info around the RFC process (spinnaker#1716)

* docs(submitting): add more info around the RFC process

* Update community/contributing/submitting.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

* Update community/contributing/submitting.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

* Update community/contributing/submitting.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* fix(guides): Use primaryName/previousName instead of primaryClass/previousClass for Orca DualExecutionRepository (spinnaker#1700)

"com.netflix.spinnaker.orca.sql.telemetry.SqlInstrumentedExecutionRepository" was already deleted and currently using class name for DualExecutionRepository doesn't work because of spinnaker/spinnaker#5381

It's better to use bean name now.

Co-authored-by: brian-armory <53799971+brian-armory@users.noreply.github.com>
Co-authored-by: Rob Zienert <rob@robzienert.com>

* chore(deps-dev): update rake requirement from ~> 10.0 to ~> 12.3 (spinnaker#1726)

Updates the requirements on [rake](https://github.com/ruby/rake) to permit the latest version.
- [Release notes](https://github.com/ruby/rake/releases)
- [Changelog](https://github.com/ruby/rake/blob/master/History.rdoc)
- [Commits](ruby/rake@v10.5.0...v12.3.3)

Signed-off-by: dependabot[bot] <support@github.com>

* docs(datadog-monitoring): add details to setup monitoring sidecar (spinnaker#1666)

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* chore(authz/ldap): Remove next steps section for LDAP (spinnaker#1729)

* docs(update): Update Plugin User Guide for Pf4j plugin framework (spinnaker#1724)

* fix(plugins): updating plugin documentation for pf4j

* docs(md): Update resource status screenshots, revise language (spinnaker#1732)

* fix(pipeline/expressions): Fix broken link (spinnaker#1735)

Co-authored-by: Repon Kumar Roy <kowshik.roy@grabtaxi.com>

* docs(community): Add adevinta logo to Spinnaker users (spinnaker#1737)

* doc(changelog): Spinnaker Version 1.16.7

* doc(changelog): Spinnaker Version 1.17.7

* doc(changelog): Spinnaker Version 1.18.5

* chore(build): Deprecate old patch versions (spinnaker#1738)

* chore(runJob): fix typo (spinnaker#1740)

s/mechanisim/mechanism

fixes spinnaker/spinnaker#1739

* fix(entity tags): minor fixups to entity tags docs for ES6 (spinnaker#1743)

* fix(entity tags): minor fixups to entity tags docs for ES6

Now that entity tags have been migrated to ElasticSearch 6, doing a quick update to the docs to reflect that

* docs(halyard): 1.32.0

* doc(changelog): Spinnaker Version 1.19.0

* feat(builds): Adds troubleshooting playbook for build cops (spinnaker#1741)

* docs(AWS/S3):Mention 'api-endpoint' & 'api-region' are optional (spinnaker#1736)

* Mention 'api-endpoint' & 'api-region' are optional

Explained the need for 'api-endpoint' & 'api-region' flags are optional and only if using Minio
to avoid confusions for beginners.

* Address PR review comments

* Move out Note to a separate section

Co-authored-by: brian-armory <53799971+brian-armory@users.noreply.github.com>

* doc(changelog): Spinnaker Version 1.19.1

* doc(changelog): Revert spinnaker Version 1.19.1

This was accidentally pushed while testing some changes to
the publish script, reverting it.

This reverts commit fb7c333.

* chore(release): Deprecate 1.16.7 (spinnaker#1746)

As we support 3 minor releases, the release of 1.19.0 means that
the 1.16.x releases are now deprecated.

* doc(changelog): Spinnaker Version 1.19.1

* doc(changelog): Spinnaker Version 1.18.6

* docs(codebuild): Add user guide for AWS CodeBuild stage (spinnaker#1725)

* refactor(changelog): Update changelog links (spinnaker#1747)

To simplify the build process, rather than create an entirely
new gist for every release, we'll only create a gist for each
minor Spinnaker version (1.18.x, 1.19.x, etc.). That gist will
contain the release notes for each patch release within that
minor version as separate files (ex: 1.18.2.md, 1.19.1.md).

I've created these gists for the 1.17, 1.18 and 1.19 branches;
this points the docs site to these new gists. By passing the
file URL parameter we will only embed the specific file related
to the patch release in question, which means this change will
result in no difference from a user's perspective; it just
simplifies creating these gists.

* refactor(changelog): Revert changelog links (spinnaker#1748)

* refactor(changelog): Update changelog links

To simplify the build process, rather than create an entirely
new gist for every release, we'll only create a gist for each
minor Spinnaker version (1.18.x, 1.19.x, etc.). That gist will
contain the release notes for each patch release within that
minor version as separate files (ex: 1.18.2.md, 1.19.1.md).

I've created these gists for the 1.17, 1.18 and 1.19 branches;
this points the docs site to these new gists. By passing the
file URL parameter we will only embed the specific file related
to the patch release in question, which means this change will
result in no difference from a user's perspective; it just
simplifies creating these gists.

* refactor(changelog): Revert changelog links

It turns out there's a problem with using a single gist
for all of the changelogs in a minor version; the maximum
size that will be rendered for a gist is across all of the
files in a gist, and the 1.17.7 release pushed the 1.17.x
gist across that size limit.  This means that trying to view
the 1.17.7 release notes now just yields a message that the
gist can't be rendered and a link to view the raw gist.

Reverting this as we'll need a different approach (maybe that
involves less copy-pasting of the content so the gist doesn't
grow as N^2 in the number of patch releases).

This reverts commit b8084fb.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(build): Simplify changelog gists (spinnaker#1749)

The prior attempt to simplify changelog gists tried
putting all the changelogs for a particular minor release
as different files in the same gist.  This failed because
for some releases we exceed the size that can be rendered
for a gist (which causes failed rendering even if the
particular file we're viewing is less than the max size).

The root cause was that we were copy-pasting the prior patch
release's changlog into the new changelog and appending changes
at the top.  This mean that, for example for 1.17.x, with 7 patch
releases, we had the 1.17.0 release notes copied 7 times.

Rather than manually copy these release notes from gist to gist,
let's just update the website to display the gists for the current
patch release and all prior patch releases in order. This means
that when making a new patch release, the gist just needs to
contain the notes for that patch; the site will then incorporate
the prior notes by reference. I have a corresponding update to
the buildtool to update how we generate these changelog files,
so they automatically pull all patch releases, but this PR is
to backfill the currently-supported releases.  (I actually
used the buildtool locally to generate this change.)

With this change, we greatly reduce the total size of the gist
for each release, getting around the earlier problem.

* fix(build): Fix script tags in changelog files (spinnaker#1750)

For some reason, only the first changelog is showing up after
the last commit. Digging into this, I believe it's because
we are incorrectly using a self-closing tag for the script element.
This seems to have been working for a single script element but is
breaking when there is more than one, causing only the first to
show up.

* fix(docs): update required node version (spinnaker#1752)

* doc(changelog): Spinnaker Version 1.17.8

* doc(changelog): Spinnaker Version 1.19.2

* chore(builds): Remove unnecessary travisCI, switch mergify status to key off github action build (spinnaker#1753)

* chore(build): Remove 1.16 from status page and add 1.19. (spinnaker#1755)

Co-authored-by: Travis Tomsu <ttomsu@google.com>

* docs(plugins): Update URL for plugin repos example (spinnaker#1756)

update the "add REPOSITORY" command. it needs the raw content

* fix(docs): Update halyard command for AWS CodeBuild (spinnaker#1759)

* chore(mergify): release-* branches require release manager approval (spinnaker#1758)

The mergify config currently doesn't distinguish between merging to master and
merging to a release branch.  It currently never merges to release branches
because mergify doesn't have permission to merge to these branches (due to
branch protection rules).

I don't want to give mergify that permission without updating the config file
here, as then it would merge to release branches after any approval, whereas we
only want to merge to release branches if a PR is approved by a release manager.

This updates the mergify config to scope the existing rules to only apply to
the master branch, and adds a new rule to merge to release branches upon
approval by a release manager.

Because the 1.17 branch (and likely the 1.18 branch in some repos) is still
exclusively using Travis CI instead of github actions, also add a rule the
merges if Travis CI passes to account for these branches. This rule can be
deleted once all of the active branches in the repo are using Github actions.

Co-authored-by: Michael Plump <plumpy@google.com>

* chore(update): Home Page Promos (spinnaker#1754)

* fix(promo): work around the css issues (spinnaker#1760)

* docs(halyard): 1.33.0

* docs(cherrypick): use mergify instead of spinnakerbot (spinnaker#1762)

* docs(aws install): Put warning about stale AWS-EC2 install doc… (spinnaker#1763)

* doc(changelog): Spinnaker Version 1.17.9

* doc(changelog): Spinnaker Version 1.19.2

* doc(changelog): Spinnaker Version 1.18.7

* doc(changelog): Spinnaker Version 1.19.3

* doc(changelog): Revert extra Spinnaker Version 1.19.2 (spinnaker#1766)

I accidentally re-released 1.19.2; revert the change to the
docs so the release time stays correct (and so that the extra
deprecated on 1.19.1 goes away).

This reverts commit 51a7e74.

* Replace password with API key in Jenkins setup (spinnaker#1731)

The documentation mentioned that the Jenkins master should be set up
using a user's password. It turns out that the API key should be used
instead. This commit changes the documentation to reflect that.

Co-authored-by: Michael Plump <plumpy@google.com>

* fix(md): update constraints url (spinnaker#1767)

* docs(newsletter): add edition3 (spinnaker#1761)

* doc(changelog): Spinnaker Version 1.17.10

* doc(changelog): Spinnaker Version 1.18.8

* doc(changelog): Spinnaker Version 1.19.4

* chore(docs): Added new testimonials for Adobe, DINS, Jamf, Veam… (spinnaker#1774)

* Updating settings-local.js code (spinnaker#1773)

* Updating settings.js code

Based off this issue, setting the settings.js configuration to the new setting helped us in our email notifications. Deck was broken until we applied this change. 

spinnaker/spinnaker#2484 (comment)

* Updating to settings-local.js

* Update setup/features/notifications/index.md

Co-Authored-By: Eric Zimanyi <ezimanyi@google.com>

Co-authored-by: Eric Zimanyi <ezimanyi@google.com>

* docs(auth): Fixed section Enable your custom provider (spinnaker#1768)

in section Enable your custom provider by following an error was coming.
Was passed main parameter 'hal' but no main parameter was defined in your arg class
I fixed it by separating in 2 steps
1-Configure the parameters
2-Enable the oauth2 feature with `authn oauth2 enable`

* chore(hackathon): add hackathon pages to community (spinnaker#1772)

First pass of these docs for the first gardening day. We'll iterate as people try it out for this and subsequent gardening days.

* docs(community): Update Gardening pages with slack links and vi… (spinnaker#1778)

* docs(community): Add Plugins dev guide to Gardening pages (spinnaker#1780)

* feat(md): add pinning doc (spinnaker#1781)

* feat(md): add pinning doc

* Update guides/user/managed-delivery/pinning/index.md

Co-Authored-By: Erik Munson <erik@ipsumcreative.com>

Co-authored-by: Erik Munson <erik@ipsumcreative.com>

* docs(plugins): Plugins Users Guide - add deploy pf4jStagePlugin… (spinnaker#1782)

* docs(success stories): Add Adobe conference talk to videos area (spinnaker#1779)

* docs(contributing): Add Documentation Style Guide (spinnaker#1733)

* docs(plugins): Update Plugin Creators Guide (spinnaker#1784)

* docs(fix): fix alpha tag error in Documentation Style Guide (spinnaker#1786)

* chore(plugins): adding videos for plugin build and delivery (spinnaker#1785)

* docs(contributing): Added page with instructions for making a c… (spinnaker#1783)

* docs(community): update gardening pages with corrected links an… (spinnaker#1790)

* docs(halyard): 1.34.0

* docs(ecs): Update IAM role requirements as of Spinnaker 1.19 (spinnaker#1789)

* docs(ecs): Update role requirements as of Spinnaker 1.19

* Update setup/install/providers/aws/aws-ecs.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* feat(docs): document removal of kustomize feature flag (spinnaker#1793)

* docs(plugins): Add redirect-from to user and creator guides (spinnaker#1795)

Add redirect-from in front matter to redirect from old page to new
page.

* docs(fix): Change redirect_from format in plugin-creators/overv… (spinnaker#1796)

The redirect isn't working, so trying a single line format.

* doc(changelog): Spinnaker Version 1.18.9

* doc(changelog): Spinnaker Version 1.19.5

* fix(docs): Fix typo (spinnaker#1799)

* Update delivery config docs to show revised image and bake settings (spinnaker#1801)

* removed unnecesary deploy apply step (spinnaker#1803)

removed unnecessary step from section Halyard Configurations

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* add warning regarding invalid Jinja methods (spinnaker#1802)

* add warning regarding invalid Jinja methods

There are quite a few examples on how to create dynamic artifacts using `tojson` Jinja method: 
spinnaker/spinnaker#4675
spinnaker/spinnaker#3401

Unfortunately, these snippets no longer work due to Jinjava changes since `1.15`:
spinnaker/orca#2921

We should add warning so folks are aware and can potentially use a workaround:
spinnaker/spinnaker#5012

* Update reference/artifacts/from-build-triggers.md

Co-Authored-By: David Byron <dbyron@dbyron.com>

Co-authored-by: Dave Dorbin <ddorbin@google.com>
Co-authored-by: David Byron <dbyron@dbyron.com>

* Provide a link to field descriptions carried over from v1 schema (spinnaker#1720)

* Provide a link to field descriptions carried over from v1 schema

* Add period at the end of statement

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* fix(reference): Fix misconfiguration in the example for component sizing (spinnaker#1794)

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* docs(managed-delivery): Update delivery config examples (spinnaker#1734)

Update the delivery config examples to reflect a recent change that
merged the `apiVersion` and `kind` schema entries into a single
`kind` entry.

See spinnaker/keel#845

* feat(docs): update references to removed appengine and artifacts feature flags (spinnaker#1806)

* feat(appengine): remove reference to removed feature flag

  We [removed the long-unused `appengineContainerImageUrlDeployments` from Halyard](spinnaker/halyard#1615); let's update the corresponding documentation to clarify that this flag is no longer needed.

* feat(artifacts): update instructions for enabling artifacts

  As of Spinnaker 1.20, the standard ("rewrite") artifacts experience will be enabled by default. Let's re-label the previous "Standard" artifacts experience to "Legacy," move its section under the now-default artifacts documentation section in the nav, and replace all instructions for enabling artifacts with a reference to a new Enabling Artifact Support section. Per the [RFC](https://github.com/spinnaker/governance/blob/master/rfc/legacy_artifacts_ui_removal.md), we can safely remove all legacy artifacts documentation after release 1.23, when no supported release will include the legacy artifacts experience.

* Update reference/artifacts-with-artifactsrewrite/index.md

Co-Authored-By: Dave Dorbin <ddorbin@google.com>

* fix(docs): update Appengine docs per dorbin@ comments

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* docs(footer): fix copyright year (spinnaker#1808)

* feat(managed-delivery): add unresolvable staus to glossary (spinnaker#1810)

* feat(docs): document how to hide stages from end-users (spinnaker#1807)

* feat(docs): document how to hide stages from end-users

* fix(docs): address dorbin@ code review comments

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* docs(contributing): Updating AWS EKS install docs (spinnaker#1797)

* docs(build-cop): Add instructions for SSH-ing to Jenkins machine (spinnaker#1812)

* docs(cleanup) Remove reference to stale AWS install guide (spinnaker#1811)

* feat(docs): consistent naming of the Kubernetes provider (spinnaker#1814)

* feat(docs): consistent naming of the Kubernetes provider

* feat(docs): clarify Docker Registry provider docs

* docs(halyard): 1.35.0

* doc(changelog): Spinnaker Version 1.19.6

* Revert "docs(cleanup) Remove reference to stale AWS install gui… (spinnaker#1815)

This reverts commit 25b5301.

* docs(builds): Add jenkins user switching (spinnaker#1818)

* docs(halyard): 1.35.1

* docs(contributing): Added page on reviewing pull requests (spinnaker#1787)

* docs(dev): Add notes on gradle window. (spinnaker#1817)

Co-authored-by: Dave Dorbin <ddorbin@google.com>
Co-authored-by: brian-armory <53799971+brian-armory@users.noreply.github.com>

* fix(docs): fix Travis and Wercker docs (spinnaker#1820)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* feat(docs): add release manager runbook (spinnaker#1819)

* feat(docs): add release manager runbook

* feat(docs): add release manager to release page

* fix(docs): address code review comments

* fix(docs): update spinnaker-announce group docs

* fix(docs): remove numbering from single-step sections

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix(docs): Fix repo build status images (spinnaker#1823)

* docs(plugins): Remove plugin deploy example; add text that only backend plugins work in 1.19.x (spinnaker#1821)

* feat(builds): List releaseN..N-2 statuses, too (spinnaker#1824)

* docs(halyard): 1.35.2

* feat(md): veto docs (spinnaker#1826)

* docs(aws): Expanded description on the aws iam concepts spinnaker#1804 (spinnaker#1825)

* docs(halyard): 1.35.3

* feat(plugins): signal that --ui-resource-location will be unneeded in Spinnaker 1.20.0 (spinnaker#1813)

* docs(fix): Add "Suggest an Edit" link to "Make a Change Using the GitHub Web UI" page (spinnaker#1828)

* docs(fix): Add "Suggest an Edit" link

Using "Suggest and Edit" is much simpler than telling people how to
find the page's source file in GitHub.

* Clarify that clicking the link takes you to page's source file.

* Reorder steps and add screenshots.

Move PR title checker info to the Open a pull request section.
Add images.
Ensure UI fields capitalization matches the UI.

* Add image files.

* Add image for pencil icon

* Replace "Edit this file..." with "Edit this file"

* Change to "Edit this file..."

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* feat(docs): add curated changelog page & update release runbook (spinnaker#1830)

* feat(docs): update release runbook

Updates the Release Runbook to reflect changes to the Build Statuses page.

* feat(docs): add curated changelog page

Let's improve the transparency of the release process by making the curated changelog notes public.
Also updates release runbook instructions to account for new workflow.

* fix(docs): fix indentation of slack messages in release runbook (spinnaker#1834)

* doc(changelog): Spinnaker Version 1.20.0

* docs(changelog): deprecate 1.17.10 (spinnaker#1835)

* feat(oauth2): Improve OAuth 2.0 Documentation (spinnaker#1833)

* feat(oauth2): Improve OAuth 2.0 Documentation

Currently there is a lot of logic baked into Halyard commands to
automatically set fields in the OAuth 2.0 config. While in some
cases it might make set-up easier, it comes at the expense of
the ability to see and modify what is being configured.

Kleat will not replicate this behavior; it will not store a mapping
of the token URI for a number of common OAuth 2.0 providers; users
will need to set this themselves in their YAML config. In order
to make this easier, let's improve the documentation so that
it's easy for users to set up any OAuth 2.0 provider by just
pasting in the provided YAML and configuring as necessary.

I think this will actually make it easier for users to troubleshoot
as it will be more clear to them what fields they have set (rather
than having this done behind the scenes).

This commit:
(1) Adds full documentation on the OAuth 2.0 config; it is currently
copy-pasted from the source of truth protos, but once kleat is more
mature we can probably just link out to its documentation. (I don't
want a consumer of the documentation yet so we are more free to refactor
it as we'll likely think about once all the protos are written).
(2) Augments all the inline hal commands with documentation on how to
configure something by editing your YAML. (I actually think this will be
more clear to operators familiar with YAML than the hal commands.)
(3) Updates the provider-specific documentation to include a block of
YAML including what Halyard defaulted and kleat will not default.
(4) Updates references to all say OAuth 2.0 for consistency (fixing
the mix of OAuth2 Oauth2 OAuth 2 and OAuth 2.0).

Users using Halyard can use either the YAML-editing or CLI instructions;
users using kleat will need to use the YAML-editing instructions. (Though
given that kleat is not even alpha yet I have not mentioned it at all
here, we'll need to holistically update the docs when it's ready for users.)

* Apply suggestions from code review

Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: Dave Dorbin <ddorbin@google.com>

* style(oauth2): Address code review comments

Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: Dave Dorbin <ddorbin@google.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* doc(changelog): Spinnaker Version 1.19.7

* doc(changelog): Spinnaker Version 1.18.10

* feat(docs): update release runbook with new spinnaker-release instructions (spinnaker#1836)

* docs(guides): clarified the config element in templated stage (spinnaker#1837)

* docs(guides): clarified the config element in templated stage

* Update guides/user/pipeline/pipeline-templates/instantiate.md

* Update guides/user/pipeline/pipeline-templates/instantiate.md

* Update guides/user/pipeline/pipeline-templates/instantiate.md

* feat(docs): remove skin documentation (spinnaker#1838)

* feat(docs): clarify language around release windows (spinnaker#1840)

* feat(docs): clarify language around release windows

* feat(docs): do not merge last minute PRs

* style(docs): Fix and clarify some wording in security docs (spinnaker#1841)

Was just reading these docs and found a couple of places where
sentences could be more clear, and also where we can remove
needlessly gendered pronouns.

* doc(changelog): Spinnaker Version 1.18.11

* doc(changelog): Spinnaker Version 1.19.8

* doc(changelog): Spinnaker Version 1.20.1

* chore(release): update cherrypick link for patches (spinnaker#1844)

update the search link for outstanding cherry picks to look for merfigy backports instead of spinnakerbot.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* Capitalized Title (spinnaker#1842)

Capitalized Title
Canary Analysis will be more visible in
the left navigation bar

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* fix(docs): fix broken links in crd-extensions (spinnaker#1850)

* docs(orca): Moved Maria DB set up after Orca SQL title (spinnaker#1843)

* doc(changelog): Spinnaker Version 1.20.2

* Update definition of stage and add definition of task (spinnaker#1688)

This PR is a result of a discussion which took place under
another PR. [0] Sending this PR in order to update the Spinnaker
documentation to ensure people who read the documentation can
get the correct information about stages and tasks.

[0] cdfoundation/sig-interoperability#14 (comment)

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* docs(sql): Add clouddriver read-only setting (spinnaker#1846)

This is likely required when using SQL backing for clouddriver with both
master and read-only replicas.

Co-authored-by: Rob Zienert <rzienert@netflix.com>

* doc(changelog): Spinnaker Version 1.19.9

* docs(build-cop): add info about Bintray conflicts (spinnaker#1848)

* docs(build-cop): add info about Bintray conflicts

* docs(build-cop): address code review comments

* Update community/contributing/nightly-builds/index.md

Co-authored-by: Dave Dorbin <ddorbin@google.com>

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* Docs(setup): adds system hardware requirements to setup overview (spinnaker#1854)

* Docs(setup): adds system hardware requirements to setup overview

* Docs(setup): adds system hardware requirements to setup overview

* Docs(setup): adds system hardware requirements to setup overview

* Added the set command and reference to mysql docs (spinnaker#1853)

* added the set command and reference to mysql docs

added link to mysql docs
added set command to make it explicit where it has to run

* Update setup/productionize/persistence/orca-sql.md

agree with change...

Co-authored-by: Dave Dorbin <ddorbin@google.com>

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* doc(changelog): Spinnaker Version 1.18.12

* doc(changelog): Spinnaker Version 1.19.10

* doc(changelog): Spinnaker Version 1.20.3

* docs(contributing): Add "Make a Change Using a Local Clone" page (spinnaker#1831)

* feat(docs): add legacy artifacts UI migration docs (spinnaker#1856)

* feat(docs): add legacy artifacts UI migration docs

* feat(docs): clarify section wording based on CR

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* feat(docs): remove obsolete codelab (spinnaker#1860)

This codelab is so old that it doesn't even descripte the legacy Kubernetes provider as V1. I only found this because it was referenced in our onboarding docs.

* doc(changelog): Spinnaker Version 1.19.11

* doc(changelog): Spinnaker Version 1.20.4

* docs(canary): Fix typo. (spinnaker#1859)

* Add Airbnb to community page users (spinnaker#1863)

Co-authored-by: Jens Vanderhaeghe <jens.vanderhaeghe@airbnb.com>

* docs(community): move Adevinta logo into alph sort (spinnaker#1865)

* docs(release cal): Add a release calendar that people can subscribe to (spinnaker#1866)

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* doc(changelog): Spinnaker Version 1.20.5

* fix variable typo in pipeline templates instantiate (spinnaker#1872)

* Dnilasor home garden banner update (spinnaker#1874)

* Update gardening signup CTA for 2nd event

* ad new gardening banner image

* clean up old imgs

* docs(dev-env): Removing ref to #gardening-feedback channel (spinnaker#1870)

* fix(docs): Change URL of Service Account manifest for kubernetes (spinnaker#1876)

"https://spinnaker.io" isn't able to connect to the server
x509: certificate is valid for www.github.com, *.github.com, ..., not spinnaker.io

This PR will correct the URL to the "https://www.spinnaker.io"

* feat(docs): add suspended cloud providers to 1.21 Release Preview (spinnaker#1881)

* fix(core): Update some terminology (spinnaker#1878)

Update the few places where we use the term 'whitelist' to better
terminology.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* docs(setup): Document how to delete service account (spinnaker#1875)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix ssl (spinnaker#1880)

Co-authored-by: Dave Dorbin <ddorbin@google.com>

* docs(halyard): 1.36.0

Co-authored-by: Adam Jordens <adam@jordens.org>
Co-authored-by: Travis Tomsu <ttomsu@google.com>
Co-authored-by: spinnaker-release <spinnaker-release>
Co-authored-by: Rosalind Benoit <rosalind.benoit@puppet.com>
Co-authored-by: Dave Dorbin <ddorbin@google.com>
Co-authored-by: brian-armory <53799971+brian-armory@users.noreply.github.com>
Co-authored-by: Matt Duftler <duftler@google.com>
Co-authored-by: Raghav R <raghav@opsmx.com>
Co-authored-by: Dan Bunker <dbunked@gmail.com>
Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Louis Jimenez <louisjimenez@google.com>
Co-authored-by: Luis Fernando Pollo <1323478+luispollo@users.noreply.github.com>
Co-authored-by: natalie <5048814+99@users.noreply.github.com>
Co-authored-by: Michael Plump <plumpy@google.com>
Co-authored-by: Matthew Johnson <matthewj@netflix.com>
Co-authored-by: Emily Burns <emburns@netflix.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: aimeeu <aimeeu.opensource@gmail.com>
Co-authored-by: Ryuzo Yamamoto <ryuzo.yamamoto@gmail.com>
Co-authored-by: Rob Zienert <rob@robzienert.com>
Co-authored-by: Peter Nagy <nagypeterjob@gmail.com>
Co-authored-by: Repon Kumar Roy <repon.roy@hotmail.com>
Co-authored-by: Erik Munson <emunson@netflix.com>
Co-authored-by: Repon Kumar Roy <kowshik.roy@grabtaxi.com>
Co-authored-by: Gerard Segarra <45596882+gerardsegarra@users.noreply.github.com>
Co-authored-by: Eric Zimanyi <ezimanyi@google.com>
Co-authored-by: Ethan Rogers <ethanfrogers@users.noreply.github.com>
Co-authored-by: Mark Vulfson <mvulfson@netflix.com>
Co-authored-by: Milindu Sanoj Kumarage <agentmilindu@users.noreply.github.com>
Co-authored-by: Kaixiang-AWS <zkaixian@amazon.com>
Co-authored-by: Chris Smalley <csmalley@netflix.com>
Co-authored-by: Ryan Pei <ryanppei@gmail.com>
Co-authored-by: Akshay Dayal <akshay_abd@yahoo.com>
Co-authored-by: Martin Duhem <martin.duhem@gmail.com>
Co-authored-by: Emily Burns <emjeburns@gmail.com>
Co-authored-by: stuposluns <stuposluns@gmail.com>
Co-authored-by: Micah Magruder <micah.magruder@cerner.com>
Co-authored-by: Andres Leon Rangel <aleon1220@gmail.com>
Co-authored-by: Erik Munson <erik@ipsumcreative.com>
Co-authored-by: aimeeu <aimee.ukasick@armory.io>
Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>
Co-authored-by: Kiran (they/them) <celanthe@users.noreply.github.com>
Co-authored-by: Clare Liguori <liguori@amazon.com>
Co-authored-by: Rob Fletcher <robfletcher@users.noreply.github.com>
Co-authored-by: Noe Gonzalez <noe.a.gonzalez@gmail.com>
Co-authored-by: David Byron <dbyron@dbyron.com>
Co-authored-by: Lorin Hochstein <lorinh@gmail.com>
Co-authored-by: Paul Roberts <2645714+pauljrob@users.noreply.github.com>
Co-authored-by: Justin Lee <justin.r.lee@gmail.com>
Co-authored-by: Daniel Peach <daniel.peach@armory.io>
Co-authored-by: Glauco Vinicius <gl4uc0@gmail.com>
Co-authored-by: Fatih Degirmenci <fdegir@gmail.com>
Co-authored-by: Karl <karl.skewes@gmail.com>
Co-authored-by: Rob Zienert <rzienert@netflix.com>
Co-authored-by: smstone <smstone@gmail.com>
Co-authored-by: Jens Vanderhaeghe <jens.vanderhaeghe@gmail.com>
Co-authored-by: Jens Vanderhaeghe <jens.vanderhaeghe@airbnb.com>
Co-authored-by: Matthew Clarke <matthewclarke47@gmail.com>
Co-authored-by: Marky Jackson <markyjackson-taulia@users.noreply.github.com>
Co-authored-by: Mahito <earthdragon77@gmail.com>
Co-authored-by: Evan Sebastian <evan.sebastian@grabtaxi.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Document vocabulary used by CI/CD tools and technologies
6 participants