Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: check md links periodically #1193

Merged
merged 1 commit into from
Jun 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .github/workflows/check-md-links.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Check Markdown links

on:
pull_request:
types: [opened, edited, synchronize, reopened]
schedule:
# Run everyday at 10:00 AM (See https://pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html#tag_20_25_07)
- cron: "0 10 * * *"

jobs:
markdown-link-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: gaurav-nelson/github-action-markdown-link-check@v1
with:
use-quiet-mode: 'yes'
use-verbose-mode: 'yes'
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ If you have any questions or need further information, please don't hesitate to

## Code of Conduct

Please make sure to read our [Code of Conduct](/CODE_OF_CONDUCT.md).
Please make sure to read our [Code of Conduct](./CODE_OF_CONDUCT.md).

## Community Expectations

Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,8 @@ If you have any questions, feel free to reach out to us in the following ways:

## Contributing

If you're interested in contributing, please refer to the [Contributing Guide](CONTRIBUTING.md) **before submitting a pull request**.
If you're interested in contributing, please refer to the [Contributing Guide](./CONTRIBUTING.md) **before submitting
a pull request**.

## License

Expand Down
2 changes: 1 addition & 1 deletion docs/cmd/en_US/kusion.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Kusion is the Platform Orchestrator of Internal Developer Platform

As a Platform Orchestrator, Kusion delivers user intentions to Kubernetes, Clouds and On-Premise resources. Also enables asynchronous cooperation between the development and the platform team and drives separation of concerns.

Find more information at: https://www.kusionstack.io/docs/user_docs/reference/cli/kusion/
Find more information at: https://www.kusionstack.io/docs/reference/commands/

```
kusion [flags]
Expand Down
6 changes: 3 additions & 3 deletions docs/design/collaboration/collaboration_paradigm.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,15 +124,15 @@ Based on our extensive practical experiences and in-depth conversations with oth

We aim to minimize application developers' cognitive load and enable self-service so we do not let application developers care about low-level infrastructure details. They only need to declare what feature they want in a developer-friendly way, such as declaring one application needs a MySQL database and public Internet access with Kusion modules provided by platform engineers. Then Kusion will provision a MySQL database and a LoadBalancer that complies with platform standardization.

We introduce a set of Kusion modules to standardize deployment and the root module is AppConfiguration. AppConfiguration is a declarative application configuration model maintained by application developers to configure all operation intentions during SDLC and more details can be found on our [website](https://kusionstack.io/docs/user_docs/concepts/appconfiguration). Each Kusion module in the AppConfiguration represents a building block built by platform engineers to standardize the application's behavior and hide infrastructure complexity, such as database, networking, and monitoring.
We introduce a set of Kusion modules to standardize deployment and the root module is AppConfiguration. AppConfiguration is a declarative application configuration model maintained by application developers to configure all operation intentions during SDLC and more details can be found on our [website](https://www.kusionstack.io/docs/concepts/app-configuration). Each Kusion module in the AppConfiguration represents a building block built by platform engineers to standardize the application's behavior and hide infrastructure complexity, such as database, networking, and monitoring.

## Terms

Before we dive into details, it is necessary to clarify certain terms.

- Workspace: A workspace is a logical concept representing a target that an application will be deployed to. We just recommend they be grouped by SDLC phases or cloud vendors. For example, it could be named as `dev`, `staging`, and `prod` or cloud vendors such as `AWS`, `Azure`, and `Aliyun` or a even combination of the two.
- [Project](https://kusionstack.io/docs/user_docs/concepts/glossary#project): A project is a logical concept to bundle application configurations.
- [Stack](https://kusionstack.io/docs/user_docs/concepts/glossary#stack): A stack is a logical concept that provides a mechanism to isolate multiple deploys of the same application. It is the smallest operational unit that can be configured and deployed independently. The name of each stack must be the same as one specific workspace.
- [Project](https://www.kusionstack.io/docs/concepts/project/overview): A project is a logical concept to bundle application configurations.
- [Stack](https://www.kusionstack.io/docs/concepts/stack/overview): A stack is a logical concept that provides a mechanism to isolate multiple deploys of the same application. It is the smallest operational unit that can be configured and deployed independently. The name of each stack must be the same as one specific workspace.

<p align="center">
<img src="../workspace-project-stack.png" width="50%"/>
Expand Down
4 changes: 2 additions & 2 deletions docs/design/core_workflow/core_workflow.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Motivation

Workflow is a sequence of steps involved in moving from the beginning to the end of a working process. [Kusion](https://kusionstack.io/docs/user_docs/intro/overview/) is a modern application delivery and management toolchain. We'd like to define a clear and stable core workflow, to describe how Kusion addresses the difficulty in application delivery. We hope the core workflow to be the user's first step into Kusion. By following the steps defined in the core workflow, user can use Kusion positively and breezily.
Workflow is a sequence of steps involved in moving from the beginning to the end of a working process. [Kusion](https://www.kusionstack.io/docs/) is a modern application delivery and management toolchain. We'd like to define a clear and stable core workflow, to describe how Kusion addresses the difficulty in application delivery. We hope the core workflow to be the user's first step into Kusion. By following the steps defined in the core workflow, user can use Kusion positively and breezily.

The core workflow also guides the R&D iteration of Kusion. Kusion may provide more features (e.g. support more config modules, apply runtimes), or present different product forms (e.g. CLI, SaaS), the core workflow should always be consistent.

Expand Down Expand Up @@ -35,7 +35,7 @@ Kusion is application-centric. Next, we start from the perspective of applicatio

### Step 1: Write

In order to reduce the complexity of configuration writing, Kusion uses code to describe the configuration, and provides a concise and universal application configuration model. The model's name is [`AppConfiguration`](https://kusionstack.io/docs/user_docs/config-walkthrough/overview#appconfiguration-model). AppConfiguration simplifies and abstracts underlying resources, shielding configuration items that application developers don't need to pay attention to. Besides, application developers can leverage advantages of code, to avoid repeated and error-prone traditional configuration writing work.
In order to reduce the complexity of configuration writing, Kusion uses code to describe the configuration, and provides a concise and universal application configuration model. The model's name is [`AppConfiguration`](https://www.kusionstack.io/docs/concepts/app-configuration). AppConfiguration simplifies and abstracts underlying resources, shielding configuration items that application developers don't need to pay attention to. Besides, application developers can leverage advantages of code, to avoid repeated and error-prone traditional configuration writing work.

The output of the step *Write* is a piece of application configuration code. The code can fully indicate the application delivery result that the developer focuses on.

Expand Down
4 changes: 3 additions & 1 deletion docs/design/secrets_management/secret_management.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,9 @@ type AWSProvider struct {

#### The Workflow

Based on the [collaboration paradigm](https://github.com/KusionStack/kusion/blob/main/docs/design/collaboration/Building%20the%20collaboration%20paradigm%20between%20App%20Developers%20and%20Platform%20Developers%20with%20Kusion.md) defined by Kusion as well as the fundanmental [workspace management](https://github.com/KusionStack/kusion/blob/main/docs/design/workspace_management/workspace_management.md) capability, the overall workflow of Kusion secrets management includes following steps:
Based on the [collaboration paradigm](../collaboration/collaboration_paradigm.md) defined by Kusion as
well as the fundamental [workspace management](../workspace_management/workspace_management.md) capability, the
overall workflow of Kusion secrets management includes following steps:

1. During the workspace initialization phase, platform team setup the target secret store, including necessary credentials info to interact with secret store.

Expand Down
4 changes: 2 additions & 2 deletions docs/design/workspace_management/workspace_management.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Context

Towards the version 0.10.0, Kusion is about to make a huge upgrade: the unambiguous definition of responsibility and collaboration paradigm between platform engineers and application developers through the application delivery process. The platform engineers firstly define modules and corresponding application-oriented schemas, where the latter constitute the application schema [AppConfiguration](https://www.kusionstack.io/docs/user_docs/config-walkthrough/overview#appconfiguration-model), and secondly initialize workspaces and corresponding configurations. The application developers select workspace and fill in the fields of AppConfiguration. Then, executing the delivery action in a trusted workspace, e.g. a CD pipeline, to apply the application intent from both the platform engineers and application developers.
Towards the version 0.10.0, Kusion is about to make a huge upgrade: the unambiguous definition of responsibility and collaboration paradigm between platform engineers and application developers through the application delivery process. The platform engineers firstly define modules and corresponding application-oriented schemas, where the latter constitute the application schema [AppConfiguration](https://www.kusionstack.io/docs/concepts/app-configuration), and secondly initialize workspaces and corresponding configurations. The application developers select workspace and fill in the fields of AppConfiguration. Then, executing the delivery action in a trusted workspace, e.g. a CD pipeline, to apply the application intent from both the platform engineers and application developers.

The upgrade defines the role of platform engineers and the concepts of **Module** and **workspace**. The Module is a building block enabling the building the intent of a set of resources from **Schema Configuration** and **Workspace Configuration**. While the workspace is a collection of application-independent configurations, and a workspace configuration is composed of a set of module inputs, which forms the entire module inputs combined with schema configuration.

Expand Down Expand Up @@ -34,7 +34,7 @@ For clarity, the workspace data is seperated into two types: configuration and s

For the set of data items that serves the same target, if one or more than one of them is sensitive data, then the whole set of data items should be kept by environment variables. Ding so is to provide a continuous, smooth experience.

According to [Building the collaboration paradigm between App Developers and Platform Developers with Kusion.md](https://github.com/KusionStack/kusion/blob/main/docs/design/collaboration/Building%20the%20collaboration%20paradigm%20between%20App%20Developers%20and%20Platform%20Developers%20with%20Kusion.md), *a stack must be linked with one workspace*. The stack name must be the same as the workspace name it will deploy to.
According to [Building the collaboration paradigm between App Developers and Platform Developers with Kusion.md](https://www.kusionstack.io/docs/concepts/app-configuration), *a stack must be linked with one workspace*. The stack name must be the same as the workspace name it will deploy to.

<br />![workspace-project-stack](../workspace-project-stack.png)

Expand Down
Loading