Skip to content

Commit

Permalink
refactor: initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
zwh2119 committed Nov 14, 2024
1 parent 70cb825 commit 99a79b1
Show file tree
Hide file tree
Showing 11 changed files with 481 additions and 0 deletions.
39 changes: 39 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
name: Bug Report
about: Report a bug encountered while operating EdgeMesh
labels: kind/bug

---

<!-- Please use this template while reporting a bug and provide as much info as possible. Thanks!-->
**What happened**:

**What you expected to happen**:

**How to reproduce it (as minimally and precisely as possible)**:

**Anything else we need to know?**:

**Environment**:
- EdgeMesh version:
- Kubernetes version (use `kubectl version`):
- KubeEdge version(e.g. `cloudcore --version` and `edgecore --version`):
- <details><summary>Cloud nodes Environment:</summary>

- Hardware configuration (e.g. `lscpu`):
- OS (e.g. `cat /etc/os-release`):
- Kernel (e.g. `uname -a`):
- Go version (e.g. `go version`):
- Others:

</details>
- <details><summary>Edge nodes Environment:</summary>

- edgecore version (e.g. `edgecore --version`):
- Hardware configuration (e.g. `lscpu`):
- OS (e.g. `cat /etc/os-release`):
- Kernel (e.g. `uname -a`):
- Go version (e.g. `go version`):
- Others:

</details>
4 changes: 4 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
contact_links:
- name: Question
url: https://github.com/kubeedge/kubeedge/discussions
about: Question relating to EdgeMesh
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: Enhancement Request
about: Suggest an enhancement to the EdgeMesh project
labels: kind/feature

---
<!-- Please only use this template for submitting enhancement requests -->

**What would you like to be added/modified**:

**Why is this needed**:
18 changes: 18 additions & 0 deletions .github/ISSUE_TEMPLATE/failing-test.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
name: Failing Test
about: Report test failures in EdgeMesh CI jobs
labels: kind/failing-test

---

<!-- Please only use this template for submitting reports about failing tests in EdgeMesh CI jobs -->

**Which jobs are failing**:

**Which test(s) are failing**:

**Since when has it been failing**:

**Reason for failure**:

**Anything else we need to know**:
45 changes: 45 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<!-- Thanks for sending a pull request! Here are some tips for you:
1. If this is your first time, please read our contributor guidelines: https://github.com/kubeedge/kubeedge/blob/master/CONTRIBUTING.md
2. Ensure you have added or ran the appropriate tests for your PR
-->

**What type of PR is this?**

<!--
Add one of the following kinds:
/kind bug
/kind cleanup
/kind documentation
/kind feature
/kind test
/kind design
Optionally add one or more of the following kinds if applicable:
/kind api-change
/kind failing-test
-->


**What this PR does / why we need it**:

**Which issue(s) this PR fixes**:
<!--
*Automatically closes linked issue when PR is merged.
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
_If PR is about `failing-tests or flakes`, please post the related issues/tests in a comment and do not use `Fixes`_*
-->
Fixes #

**Special notes for your reviewer**:

**Does this PR introduce a user-facing change?**:
<!--
If no, just write "NONE" in the release-note block below.
If yes, a release note is required:
Enter your extended release note in the block below. If the PR requires additional action from users switching to the new release, include the string "action required".
-->
```release-note
```
46 changes: 46 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: DOCS

on:
# trigger deployment on every push to main branch
push:
branches: [main]
# trigger deployment manually
workflow_dispatch:

jobs:
docs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
with:
# fetch all commits to get last updated time or other git log info
fetch-depth: 0

- name: Setup Node.js
uses: actions/setup-node@v1
with:
# choose node.js version to use
node-version: '14'

# cache node_modules
- name: Cache dependencies
uses: actions/cache@v3
id: yarn-cache
with:
path: |
**/docs/node_modules
key: ${{ runner.os }}-yarn-${{ hashFiles('**/docs/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
# install dependencies if the cache did not hit
- name: Install dependencies
if: steps.yarn-cache.outputs.cache-hit != 'true'
run: yarn --frozen-lockfile
working-directory: ./docs

# run build script
- name: Build VuePress site
run: yarn docs:build
working-directory: ./docs
175 changes: 175 additions & 0 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
name: CI

on:
push:
branches:
- main
tags:
pull_request:

env:
KUBEEDGE_VERSION: v1.13.3

jobs:
verify-and-lint:
runs-on: ubuntu-latest
timeout-minutes: 30
name: Verify vendor, licenses, do lint
env:
GOPATH: /home/runner/work/${{ github.repository }}
steps:
- name: Install Go
uses: actions/setup-go@v3
with:
go-version: 1.19.x

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0
path: ./src/github.com/${{ github.repository }}

- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Install dependences
run: |
sudo apt-get install -y jq
- name: Run verify test
run: make verify
working-directory: ./src/github.com/${{ github.repository }}

- name: Run lint test
run: make lint
working-directory: ./src/github.com/${{ github.repository }}

build:
runs-on: ubuntu-latest
timeout-minutes: 30
name: Build binary
steps:
- name: Install Go
uses: actions/setup-go@v3
with:
go-version: 1.19.x

- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- run: make

e2e_test:
runs-on: ubuntu-latest
timeout-minutes: 30
name: E2e test
env:
GO111MODULE: on
steps:
- name: Install Go
uses: actions/setup-go@v3
with:
go-version: 1.19.x

- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Set up Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0

- name: Install dependences
run: |
command -v ginkgo || go install github.com/onsi/ginkgo/v2/ginkgo@latest
go install sigs.k8s.io/[email protected]
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.27.7/bin/linux/amd64/kubectl && sudo install kubectl /usr/local/bin/kubectl
type keadm || {
curl -LO https://github.com/kubeedge/kubeedge/releases/download/$KUBEEDGE_VERSION/keadm-$KUBEEDGE_VERSION-linux-amd64.tar.gz
tar -C . -xzf keadm-$KUBEEDGE_VERSION-linux-amd64.tar.gz
chmod +x ./keadm-$KUBEEDGE_VERSION-linux-amd64/keadm/keadm
sudo mv ./keadm-$KUBEEDGE_VERSION-linux-amd64/keadm/keadm /usr/local/bin/keadm
}
- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- run: make e2e

docker_build:
runs-on: ubuntu-latest
timeout-minutes: 30
name: Docker image build
steps:
- name: Install Go
uses: actions/setup-go@v3
with:
go-version: 1.19.x

- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- run: make images

docker_cross_build:
runs-on: ubuntu-latest
timeout-minutes: 30
name: Docker cross build images
steps:
- name: Install Go
uses: actions/setup-go@v3
with:
go-version: 1.19.x

- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- run: make docker-cross-build

check_helm_pkg:
runs-on: ubuntu-latest
name: Check helm package
steps:
- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0

- name: Check helm package
run: |
chmod a+x hack/verify-helm-package.sh && hack/verify-helm-package.sh
31 changes: 31 additions & 0 deletions .github/workflows/release-helm-package.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Helm-Auto-Release

on:
pull_request:
branches:
- main
types: [closed]

jobs:
helm-release:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0

- name: Release helm package
run: |
chmod a+x hack/update-helm-package.sh && hack/update-helm-package.sh
Loading

0 comments on commit 99a79b1

Please sign in to comment.