-
Notifications
You must be signed in to change notification settings - Fork 149
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Release v0.44.0 Signed-off-by: Kenta Kozuka <[email protected]> * Update release note Signed-off-by: Kenta Kozuka <[email protected]> --------- Signed-off-by: Kenta Kozuka <[email protected]>
- Loading branch information
1 parent
d6400db
commit 9e1970f
Showing
80 changed files
with
6,630 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
tag: v0.43.1 | ||
tag: v0.44.0 | ||
|
||
releaseNoteGenerator: | ||
showCommitter: false | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
--- | ||
title: "Release v0.44.0" | ||
linkTitle: "Release v0.44.0" | ||
date: 2023-06-23 | ||
description: > | ||
Release v0.44.0 | ||
--- | ||
|
||
## Changes since v0.43.1 | ||
|
||
### New Features | ||
|
||
* Add custom sync stage ([#4223](https://github.com/pipe-cd/pipecd/pull/4223)) | ||
* Add attachment feature that supports attaching files to application manifests ([#4289](https://github.com/pipe-cd/pipecd/pull/4289)) | ||
* Support Terraform v1.5.0 onwards([#4412](https://github.com/pipe-cd/pipecd/pull/4412)) | ||
* Add deployment metrics ([#4361](https://github.com/pipe-cd/pipecd/pull/4361)) | ||
* Enable to use kubectl server side apply ([#4375](https://github.com/pipe-cd/pipecd/pull/4375)) | ||
|
||
### Notable Changes | ||
|
||
* Show platform provider on the deployment detail page ([#4369](https://github.com/pipe-cd/pipecd/pull/4369)) | ||
* Support slack API ([#4355](https://github.com/pipe-cd/pipecd/pull/4355)) | ||
* Support architectures filed for Lambda ([#4351](https://github.com/pipe-cd/pipecd/pull/4351)) | ||
* Support log level ([#4393](https://github.com/pipe-cd/pipecd/pull/4393)) | ||
* Add runtime platform to ECS task definition ([#4326](https://github.com/pipe-cd/pipecd/pull/4326)) ([#4330](https://github.com/pipe-cd/pipecd/pull/4330)) | ||
* Add EnableExecuteCommand field to ECS service ([#4332](https://github.com/pipe-cd/pipecd/pull/4332)) | ||
|
||
### Internal Changes | ||
|
||
* Release v0.44.0 | ||
* Update README ([#4427](https://github.com/pipe-cd/pipecd/pull/4427)) | ||
* Fix path settings of grafana ingresss is incorrect ([#4423](https://github.com/pipe-cd/pipecd/pull/4423)) | ||
* Update base image of PipeCD components to latest piped-base ([#4421](https://github.com/pipe-cd/pipecd/pull/4421)) | ||
* Update pipectl docs ([#4420](https://github.com/pipe-cd/pipecd/pull/4420)) | ||
* Update piped-base-okd base image ([#4419](https://github.com/pipe-cd/pipecd/pull/4419)) | ||
* Update piped-base image ([#4416](https://github.com/pipe-cd/pipecd/pull/4416)) | ||
* Add deployment panel to dashboard ([#4410](https://github.com/pipe-cd/pipecd/pull/4410)) | ||
* Fix managed certificates and backend config are missing with helm upgrade ([#4414](https://github.com/pipe-cd/pipecd/pull/4414)) | ||
* Update piped-base for piped-okd-base ([#4406](https://github.com/pipe-cd/pipecd/pull/4406)) | ||
* Update contributors list ([#4409](https://github.com/pipe-cd/pipecd/pull/4409)) | ||
* Expose grafana.pspEnabled to pipecd manifest ([#4408](https://github.com/pipe-cd/pipecd/pull/4408)) | ||
* Update piped-base without preinstall tools ([#4405](https://github.com/pipe-cd/pipecd/pull/4405)) | ||
* Remove installation script of asdf ([#4404](https://github.com/pipe-cd/pipecd/pull/4404)) | ||
* Remove pre-installation tools from piped-base image ([#4400](https://github.com/pipe-cd/pipecd/pull/4400)) | ||
* Create test code of httpapi/httpapimetrics/label ([#4403](https://github.com/pipe-cd/pipecd/pull/4403)) | ||
* refactor : fmt.errorf %!v(MISSING) to %!w(MISSING) ([#4398](https://github.com/pipe-cd/pipecd/pull/4398)) | ||
* Fix import block cause failure of parsing regex ([#4396](https://github.com/pipe-cd/pipecd/pull/4396)) | ||
* add file headers ([#4397](https://github.com/pipe-cd/pipecd/pull/4397)) | ||
* Update site footer ([#4389](https://github.com/pipe-cd/pipecd/pull/4389)) | ||
* Remove external tool management ([#4383](https://github.com/pipe-cd/pipecd/pull/4383)) | ||
* Update site footer ([#4385](https://github.com/pipe-cd/pipecd/pull/4385)) | ||
* Update go version ([#4378](https://github.com/pipe-cd/pipecd/pull/4378)) | ||
* Add release section to README ([#4371](https://github.com/pipe-cd/pipecd/pull/4371)) | ||
* Update notification docs ([#4373](https://github.com/pipe-cd/pipecd/pull/4373)) | ||
* Add versioning and release cycle to docs ([#4356](https://github.com/pipe-cd/pipecd/pull/4356)) | ||
* Fix asdf setup is broken in .profile ([#4366](https://github.com/pipe-cd/pipecd/pull/4366)) | ||
* Update readme ([#4365](https://github.com/pipe-cd/pipecd/pull/4365)) | ||
* Update readme ([#4364](https://github.com/pipe-cd/pipecd/pull/4364)) | ||
* Update contribution docs ([#4357](https://github.com/pipe-cd/pipecd/pull/4357)) | ||
* Fix typos ([#4358](https://github.com/pipe-cd/pipecd/pull/4358)) | ||
* Update MAINTAINERS list ([#4354](https://github.com/pipe-cd/pipecd/pull/4354)) | ||
* modify sso login description from GitHub Enterprise to GitHub Enterprise Server ([#4350](https://github.com/pipe-cd/pipecd/pull/4350)) | ||
* Update contributors list ([#4348](https://github.com/pipe-cd/pipecd/pull/4348)) | ||
* Fix wrong image path for opengraph and twitter card ([#4346](https://github.com/pipe-cd/pipecd/pull/4346)) | ||
* Update site ingress to networking.k8s.io/v1 ([#4345](https://github.com/pipe-cd/pipecd/pull/4345)) | ||
* Update site ingress version ([#4344](https://github.com/pipe-cd/pipecd/pull/4344)) | ||
* Add announcement blog ([#4339](https://github.com/pipe-cd/pipecd/pull/4339)) | ||
* Fix wrong blog time ([#4340](https://github.com/pipe-cd/pipecd/pull/4340)) | ||
* Add monitring overview to docs ([#4338](https://github.com/pipe-cd/pipecd/pull/4338)) | ||
* Support update application api ([#4336](https://github.com/pipe-cd/pipecd/pull/4336)) | ||
* Remove CLA ([#4335](https://github.com/pipe-cd/pipecd/pull/4335)) | ||
* Fix indent ([#4322](https://github.com/pipe-cd/pipecd/pull/4322)) | ||
* Update manifests to fix service account error ([#4328](https://github.com/pipe-cd/pipecd/pull/4328)) | ||
* Release v0.43.1 ([#4331](https://github.com/pipe-cd/pipecd/pull/4331)) | ||
* Update codeowner ([#4334](https://github.com/pipe-cd/pipecd/pull/4334)) | ||
* Update codeowners ([#4327](https://github.com/pipe-cd/pipecd/pull/4327)) | ||
* Update go version ([#4320](https://github.com/pipe-cd/pipecd/pull/4320)) | ||
* Update contributions list ([#4323](https://github.com/pipe-cd/pipecd/pull/4323)) | ||
* Remove unused web test ([#4324](https://github.com/pipe-cd/pipecd/pull/4324)) | ||
* Add docs for attachment feature ([#4321](https://github.com/pipe-cd/pipecd/pull/4321)) | ||
* Add custom sync sample and docs ([#4256](https://github.com/pipe-cd/pipecd/pull/4256)) | ||
* Add asdf install script ([#4309](https://github.com/pipe-cd/pipecd/pull/4309)) | ||
* [FileDB] Fix failed to update piped name ([#4319](https://github.com/pipe-cd/pipecd/pull/4319)) | ||
* Bump google.golang.org/api ([#4317](https://github.com/pipe-cd/pipecd/pull/4317)) | ||
* Add UpdatePiped grpc api ([#4318](https://github.com/pipe-cd/pipecd/pull/4318)) | ||
* Add GetPiped grpc api ([#4316](https://github.com/pipe-cd/pipecd/pull/4316)) | ||
* Add RegisterPiped api for grpcapi ([#4314](https://github.com/pipe-cd/pipecd/pull/4314)) | ||
* Bump github.com/docker/docker ([#4313](https://github.com/pipe-cd/pipecd/pull/4313)) | ||
* Change invalid reason showing UI ([#4303](https://github.com/pipe-cd/pipecd/pull/4303)) | ||
* Rearrange configuration reference docs sections and add missing docs ([#4301](https://github.com/pipe-cd/pipecd/pull/4301)) | ||
* Improvement of isIgnoredPath ([#4306](https://github.com/pipe-cd/pipecd/pull/4306)) | ||
* Update example in drift detection docs ([#4305](https://github.com/pipe-cd/pipecd/pull/4305)) | ||
* Update error message for driftDetection validation ([#4302](https://github.com/pipe-cd/pipecd/pull/4302)) | ||
* Bump github.com/opencontainers/runc from 1.1.2 to 1.1.5 ([#4304](https://github.com/pipe-cd/pipecd/pull/4304)) | ||
* Make INVALID_CONFIG error messages user friendly ([#4280](https://github.com/pipe-cd/pipecd/pull/4280)) | ||
* Remove unneeded layout for docs ([#4299](https://github.com/pipe-cd/pipecd/pull/4299)) | ||
* Add external binary management by asdf ([#4286](https://github.com/pipe-cd/pipecd/pull/4286)) | ||
* Update contributions list ([#4300](https://github.com/pipe-cd/pipecd/pull/4300)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
title: "Welcome to PipeCD" | ||
linkTitle: "Documentation [v0.44.x]" | ||
type: docs | ||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
--- | ||
title: "Concepts" | ||
linkTitle: "Concepts" | ||
weight: 2 | ||
description: > | ||
This page describes several core concepts in PipeCD. | ||
--- | ||
|
||
![](/images/architecture-overview.png) | ||
<p style="text-align: center;"> | ||
Component Architecture | ||
</p> | ||
|
||
### Piped | ||
|
||
`piped` is a single binary component you run as an agent in your cluster, your local network to handle the deployment tasks. | ||
It can be run inside a Kubernetes cluster by simply starting a Pod or a Deployment. | ||
This component is designed to be stateless, so it can also be run in a single VM or even your local machine. | ||
|
||
### Control Plane | ||
|
||
A centralized component managing deployment data and provides gRPC API for connecting `piped`s as well as all web-functionalities of PipeCD such as | ||
authentication, showing deployment list/details, application list/details, delivery insights... | ||
|
||
### Project | ||
|
||
A project is a logical group of applications to be managed by a group of users. | ||
Each project can have multiple `piped` instances from different clouds or environments. | ||
|
||
There are three types of project roles: | ||
|
||
- **Viewer** has only permissions of viewing to deployment and application in the project. | ||
- **Editor** has all viewer permissions, plus permissions for actions that modify state such as manually trigger/cancel the deployment. | ||
- **Admin** has all editor permissions, plus permissions for managing project data, managing project `piped`. | ||
|
||
### Application | ||
|
||
A collect of resources (containers, services, infrastructure components...) and configurations that are managed together. | ||
PipeCD supports multiple kinds of applications such as `KUBERNETES`, `TERRAFORM`, `ECS`, `CLOUDRUN`, `LAMBDA`... | ||
|
||
### Application Configuration | ||
|
||
A YAML file that contains information to define and configure application. | ||
Each application requires one file at application directory stored in the Git repository. | ||
The default file name is `app.pipecd.yaml`. | ||
|
||
### Application Directory | ||
|
||
A directory in Git repository containing application configuration file and application manifests. | ||
Each application must have one application directory. | ||
|
||
### Deployment | ||
|
||
A deployment is a process that does transition from the current state (running state) to the desired state (specified state in Git) of a specific application. | ||
When the deployment is success, it means the running state is being synced with the desired state specified in the target commit. | ||
|
||
### Sync Strategy | ||
|
||
There are 3 strategies that PipeCD supports while syncing your application state with its configuration stored in Git. Which are: | ||
- Quick Sync: a fast way to make the running application state as same as its Git stored configuration. The generated pipeline contains only one predefined `SYNC` stage. | ||
- Pipeline Sync: sync the running application state with its Git stored configuration through a pipeline defined in its application configuration. | ||
- Auto Sync: depends on your defined application configuration, `piped` will decide the best way to sync your application state with its Git stored configuration. | ||
|
||
### Platform Provider | ||
|
||
Note: The previous name of this concept was Cloud Provider. | ||
|
||
PipeCD supports multiple platforms and multiple kinds of applications. | ||
Platform Provider defines which platform, cloud and where application should be deployed to. | ||
|
||
Currently, PipeCD is supporting these five platform providers: `KUBERNETES`, `ECS`, `TERRAFORM`, `CLOUDRUN`, `LAMBDA`. | ||
|
||
### Analysis Provider | ||
An external product that provides metrics/logs to evaluate deployments, such as `Prometheus`, `Datadog`, `Stackdriver`, `CloudWatch` and so on. | ||
It is mainly used in the [Automated deployment analysis](../user-guide/managing-application/customizing-deployment/automated-deployment-analysis/) context. |
7 changes: 7 additions & 0 deletions
7
docs/content/en/docs-v0.44.x/contribution-guidelines/_index.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
--- | ||
title: "Contributor Guide" | ||
linkTitle: "Contributor Guide" | ||
weight: 6 | ||
description: > | ||
This guide is for anyone who want to contribute to PipeCD project. We are so excited to have you! | ||
--- |
36 changes: 36 additions & 0 deletions
36
docs/content/en/docs-v0.44.x/contribution-guidelines/architectural-overview.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
title: "Architectural overview" | ||
linkTitle: "Architectural overview" | ||
weight: 3 | ||
description: > | ||
This page describes the architecture of PipeCD. | ||
--- | ||
|
||
![](/images/architecture-overview.png) | ||
<p style="text-align: center;"> | ||
Component Architecture | ||
</p> | ||
|
||
### Piped | ||
|
||
A single binary component runs in your cluster, your local network to handle the deployment tasks. | ||
It can be run inside a Kubernetes cluster by simply starting a Pod or a Deployment. | ||
This component is designed to be stateless, so it can also be run in a single VM or even your local machine. | ||
|
||
### Control Plane | ||
|
||
A centralized component manages deployment data and provides gRPC API for connecting `piped`s as well as all web-functionalities of PipeCD such as | ||
authentication, showing deployment list/details, application list/details, delivery insights... | ||
|
||
Control Plane contains the following components: | ||
- `server`: a service to provide api for piped, web and serve static assets for web. | ||
- `ops`: a service to provide administrative features for Control Plane owner like adding/managing projects. | ||
- `cache`: a redis cache service for caching internal data. | ||
- `datastore`: data storage for storing deployment, application data | ||
- this can be a fully-managed service such as `Firestore`, `Cloud SQL`... | ||
- or a self-managed such as `MySQL` | ||
- `filestore`: file storage for storing logs, application states | ||
- this can a fully-managed service such as `GCS`, `S3`... | ||
- or a self-managed service such as `Minio` | ||
|
||
For more information, see [Architecture overview of Control Plane](../../user-guide/managing-controlplane/architecture-overview/). |
33 changes: 33 additions & 0 deletions
33
docs/content/en/docs-v0.44.x/contribution-guidelines/contributing.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
--- | ||
title: "Contributing" | ||
linkTitle: "Contributing" | ||
weight: 1 | ||
description: > | ||
This page describes how to contribute to PipeCD. | ||
--- | ||
|
||
PipeCD is an open source project that anyone in the community can use, improve, and enjoy. We'd love you to join us! | ||
|
||
## Contributor License Agreement | ||
|
||
For any code contribution, please read the documents below carefully: | ||
- [License](https://github.com/pipe-cd/pipecd/blob/master/LICENSE) | ||
- [Developer Certificate of Origin (DCO)](https://developercertificate.org/) | ||
|
||
And signing off your commit with `git commit -s` (About commit sign-off please read [Github docs](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository#about-commit-signoffs)) | ||
|
||
## Creating an issue | ||
|
||
If you've found a problem, please check the existing [issues tracker](https://github.com/pipe-cd/pipecd/issues) first, and create an issue in the [pipe-cd/pipecd](https://github.com/pipe-cd/pipecd/issues) repository if needed. | ||
|
||
## Creating a pull request | ||
|
||
Look at our [help wanted issues](https://github.com/pipe-cd/pipecd/issues?q=is%3Aissue+is%3Aopen+label%3A"help+wanted") or our [good first issues](https://github.com/pipe-cd/pipecd/issues?q=is%3Aissue+is%3Aopen+label%3A"good+first+issue") for finding some good issues for your first pull request. | ||
|
||
### Small tips | ||
|
||
The pull request title is used to generate our release changelog. Therefore, it would be great if you write the title that is easier to understand from the user's point of view. | ||
|
||
## Code reviews | ||
|
||
All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult [GitHub Help](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests) for more information on using pull requests. |
94 changes: 94 additions & 0 deletions
94
docs/content/en/docs-v0.44.x/contribution-guidelines/development.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
--- | ||
title: "Development" | ||
linkTitle: "Development" | ||
weight: 2 | ||
description: > | ||
This page describes how to build, test PipeCD source code at your local environment. | ||
--- | ||
|
||
## Prerequisites | ||
|
||
- [Go 1.20](https://go.dev/) | ||
- [Docker](https://www.docker.com/) | ||
- [kind](https://kind.sigs.k8s.io/docs/user/quick-start/#installation) (If you want to run Control Plane locally) | ||
- [helm 3.8](https://helm.sh/docs/intro/install/) (If you want to run Control Plane locally) | ||
|
||
## Repositories | ||
- [pipecd](https://github.com/pipe-cd/pipecd): contains all source code and documentation of PipeCD project. | ||
- [examples](https://github.com/pipe-cd/examples): contains various generated examples to demonstrate how to use PipeCD. | ||
|
||
## Commands | ||
|
||
- `make build/go`: builds all go modules including pipecd, piped, pipectl. | ||
- `make build/web`: builds the static files for web. | ||
|
||
- `make test/go`: runs all unit tests of go modules. | ||
- `make test/web`: runs all unit tests of web. | ||
- `make test/integration`: runs integration tests. | ||
|
||
- `make run/piped`: runs Piped locally (for more information, see [here](#how-to-run-piped-agent-locally)). | ||
- `make run/site`: runs PipeCD site locally (requires [hugo](https://github.com/gohugoio/hugo) with `_extended` version `0.92.1` or later to be installed). | ||
|
||
- `make gen/code`: generate Go and Typescript code from protos and mock configs. You need to run it if you modified any proto or mock definition files. | ||
|
||
For the full list of available commands, please see the Makefile at the root of repository. | ||
|
||
## How to run Control Plane locally | ||
|
||
1. Start running a Kubernetes cluster | ||
|
||
``` console | ||
make kind-up | ||
``` | ||
|
||
Once it is no longer used, run `make kind-down` to delete it. | ||
|
||
2. Install Control Plane into the local cluster | ||
|
||
``` console | ||
make run/pipecd | ||
``` | ||
|
||
Once all components are running up, use `kubectl port-forward` to expose the installed Control Plane on your localhost: | ||
|
||
``` console | ||
kubectl -n pipecd port-forward svc/pipecd 8080 | ||
``` | ||
|
||
3. Access to the local Control Plane web console | ||
|
||
Point your web browser to [http://localhost:8080](http://localhost:8080) to login with the configured static admin account: project = `quickstart`, username = `hello-pipecd`, password = `hello-pipecd`. | ||
|
||
## How to run Piped agent locally | ||
|
||
1. Prepare the piped configuration file `piped-config.yaml` | ||
|
||
2. Ensure that your `kube-context` is connecting to the right kubernetes cluster | ||
|
||
3. Run the following command to start running `piped` (if you want to connect Piped to a locally running Control Plane, add `INSECURE=true` option) | ||
|
||
``` console | ||
make run/piped CONFIG_FILE=piped-config.yaml | ||
``` | ||
|
||
## Docs and workaround with docs | ||
|
||
PipeCD official site contains multiple versions of documentation, all placed under the `/docs/content/en` directory, which are: | ||
- `/docs`: stable version docs, usually synced with the latest released version docs. | ||
- `/docs-dev`: experimental version docs, contains docs for not yet released features or changes. | ||
- `/docs-v0.x.x`: contains docs for specified version family (a version family is all versions which in the same major release). | ||
|
||
Basically, we have two simple rules: | ||
- Do not touch to the `/docs` content directly. | ||
- Keep stable docs version synced with the latest released docs version. | ||
|
||
Here are the flow of docs contribution regard some known scenarios: | ||
1. Update docs that are related to a specified version (which is not the latest released version): | ||
In such case, update the docs under `/docs-v0.x.x` is enough. | ||
2. Update docs for not yet released features or changes: | ||
In such case, update the docs under `/docs-dev` is enough. | ||
3. Update docs that are related to the latest released docs version: | ||
- Change the docs' content that fixes the issue under `/docs-dev` and `/docs-v0.x.x`, they share the same file structure so you should find the right files in both directories. | ||
- Use `make gen/stable-docs` command to sync the latest released version docs under `/docs-v0.x.x` to `/docs` | ||
|
||
If you find any issues related to the docs, we're happy to accept your help. |
Oops, something went wrong.