Skip to content
This repository was archived by the owner on May 30, 2024. It is now read-only.

Commit 87fc2f2

Browse files
author
Noah Hanjun Lee
authored
doc: init documentation for Gitploy (#82)
* Index * 'how it work' * deploy.yml * Set advanced features: `pymdownx` * Self-hosted server * Deployment * First deployment * Configurations
1 parent fff50a9 commit 87fc2f2

25 files changed

+262
-20
lines changed

docs/concepts/chatops.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
# Chatops
22

3-
ChatOps is a term that’s been coined recently to refer to using chat services, such as Slack or Microsoft Teams, to deploy or run some operations. And Gitploy also supports Chatops as a helper tool to increase speed and accessibility. For example, if the operator wants to rollback out of the office by the incident, he(or she) can rollback easily with the Chatops command.
3+
ChatOps is a term that’s been coined recently to refer to using chat services, such as Slack or Microsoft Teams, to deploy or run some operations. Gitploy also supports Chatops as a helper tool.
4+
5+
![Slack deploy](../images//slack-deploy.png)
46

57
## Integration
68

7-
Currently, *Gitploy supports Slack*, but it will support Microsoft Teams and other chat services near the corner.
9+
Currently, Gitploy supports Slack only, but it will support Microsoft Teams near the corner.
810

911
## Limit
1012

11-
Cloud doesn't support Chatops. *Only self-managed is available.* Please, check [how to integrate with Chatops](../tasks/integration.md).
13+
Cloud doesn't support Chatops. *Only self-hosted is available.* You can check [how to integrate with Chatops](../tasks/integration.md) for details.

docs/concepts/deploy.yml.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,40 @@
11
# deploy.yml
22

3+
Gitploy configures a pipeline with a simple, easy‑to‑read file that you commit to your git repository.
4+
5+
## Features
6+
7+
### Parameters for Github deployment
8+
9+
Github deployments offer a few configurable [parameters](https://docs.github.com/en/rest/reference/repos#create-a-deployment--parameters). You can configure these parameters in the deploy.yml file. You can check details in the reference.
10+
11+
Here is the example to deploy based on tag:
12+
13+
```yaml
14+
envs:
15+
- name: prod
16+
auto_merge: false
17+
required_contexts:
18+
- "go-test"
19+
- "react-test"
20+
- "publish-image"
21+
production_environment: true
22+
```
23+
24+
### Approval
25+
26+
Gitploy supports the approval step to protect to deploy until it matches the required approving approvals.
27+
28+
```yaml
29+
envs:
30+
- name: prod
31+
approval:
32+
enabled: true
33+
required_count: 1
34+
```
35+
36+
## File Location
37+
38+
When you activate the repository in Gitploy, the default path is `deploy.yml` at the root. But you can replace the file path in the settings tab in Gitploy.
39+
40+
*Note that Gitploy always reads the file from the head of the default branch.*

docs/concepts/deployment.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Deployment
2+
3+
Gitploy provides two types of deployment: Deploy and Rollback.
4+
5+
## Deploy
6+
7+
Deploying is the primary feature of Gitploy. When you deploy, you have to select the environment and the `ref`: for the environment, you can choose one of the environments listed in the `deploy.yml`, and for the `ref`, you can choose one of commit, branch, and tag.
8+
9+
With approval, Gitploy waits until it matches the required approving approvals. So you have to confirm to deploy after approval.
10+
11+
## Rollback
12+
13+
Rollback is the best way to recover while you fix the problems. Gitploy supports the rollback. You can choose one of the successful deployments to rollback.
14+
15+
*Note that if the ref of the selected deployment is a branch, Gitploy automatically references the commit SHA to prevent deploying the head of the branch.*

docs/concepts/how-it-work.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# How it works
2+
3+
Gitploy builds the system around GitHub [deployment API](https://docs.github.com/en/rest/reference/repos#deployments). **It's an event-driven decoupled way to deploy your code.** Internally, Gitploy creates a new Github deployment resource, and Github dispatches a deployment event that external services can listen for and act. It enables developers and organizations to build loosely coupled tooling.
4+
5+
This approach has several pros:
6+
7+
* Replace deployment tools easily without changing your deployment pipeline.
8+
* Easy to implement details of deploying different types of applications (e.g., web, native).
9+
10+
Below is a simple diagram for how these interactions would work:
11+
12+
```
13+
+---------+ +--------+ +---------+ +-------------+
14+
| Gitploy | | GitHub | | Tools | | Your Server |
15+
+---------+ +--------+ +---------+ +-------------+
16+
| | | |
17+
| Create Deployment | | |
18+
|--------------------->| | |
19+
| | | |
20+
| Deployment Created | | |
21+
|<---------------------| | |
22+
| | | |
23+
| | Deployment Event | |
24+
| |---------------------->| |
25+
| | | SSH+Deploys |
26+
| | |-------------------->|
27+
| | | |
28+
| | Deployment Status | |
29+
| |<----------------------| |
30+
| Deployment Status | | |
31+
|<---------------------| | |
32+
| | | |
33+
| | | Deploy Completed |
34+
| | |<--------------------|
35+
| | Deployment Status | |
36+
| |<----------------------| |
37+
| Deployment Status | | |
38+
|<---------------------| | |
39+
| | | |
40+
```
41+
42+
Gitploy lets you create a deployment in advanced ways, such as promotion or rollback, and beef up steps to create a new deployment.
43+
44+
*Keep in mind that Gitploy is never actually accessing your servers. It's up to your tools to interact with deployment events.*

docs/concepts/license.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ After purchase, you can unlock the Gtiploy Enterprise edition by setting [the co
66

77
## Expiry
88

9-
The license will be expired when it reaches the expiry date. You have to renew the license when it is expired.
9+
The license will be expired when it reaches the expiry date. You have to renew the license before it is expired.

docs/concepts/overview.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

docs/concepts/self-hosted-server.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Self-hosted Server
2+
3+
Gitploy provide self-hosted server which is the practice of locally installing and hosting by the user. We're providing installation guide for each environment. You can check this [guide](../tasks/installation.md) for details.

docs/images/deploy-commit.png

38.4 KB
Loading

docs/images/github-deployment.png

23.2 KB
Loading

docs/images/slack-deploy.png

37.5 KB
Loading

0 commit comments

Comments
 (0)