-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #4107 from makeplane/preview
release: v0.17-dev
- Loading branch information
Showing
1,442 changed files
with
36,416 additions
and
29,694 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
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,84 @@ | ||
name: Auto Merge or Create PR on Push | ||
|
||
on: | ||
workflow_dispatch: | ||
push: | ||
branches: | ||
- "sync/**" | ||
|
||
env: | ||
CURRENT_BRANCH: ${{ github.ref_name }} | ||
SOURCE_BRANCH: ${{ secrets.SYNC_SOURCE_BRANCH_NAME }} # The sync branch such as "sync/ce" | ||
TARGET_BRANCH: ${{ secrets.SYNC_TARGET_BRANCH_NAME }} # The target branch that you would like to merge changes like develop | ||
GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }} # Personal access token required to modify contents and workflows | ||
REVIEWER: ${{ secrets.SYNC_PR_REVIEWER }} | ||
|
||
jobs: | ||
Check_Branch: | ||
runs-on: ubuntu-latest | ||
outputs: | ||
BRANCH_MATCH: ${{ steps.check-branch.outputs.MATCH }} | ||
steps: | ||
- name: Check if current branch matches the secret | ||
id: check-branch | ||
run: | | ||
if [ "$CURRENT_BRANCH" = "$SOURCE_BRANCH" ]; then | ||
echo "MATCH=true" >> $GITHUB_OUTPUT | ||
else | ||
echo "MATCH=false" >> $GITHUB_OUTPUT | ||
fi | ||
Auto_Merge: | ||
if: ${{ needs.Check_Branch.outputs.BRANCH_MATCH == 'true' }} | ||
needs: [Check_Branch] | ||
runs-on: ubuntu-latest | ||
permissions: | ||
pull-requests: write | ||
contents: write | ||
steps: | ||
- name: Checkout code | ||
uses: actions/[email protected] | ||
with: | ||
fetch-depth: 0 # Fetch all history for all branches and tags | ||
|
||
- name: Setup Git | ||
run: | | ||
git config user.name "GitHub Actions" | ||
git config user.email "[email protected]" | ||
- name: Setup GH CLI and Git Config | ||
run: | | ||
type -p curl >/dev/null || (sudo apt update && sudo apt install curl -y) | ||
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg | ||
sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg | ||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null | ||
sudo apt update | ||
sudo apt install gh -y | ||
- name: Check for merge conflicts | ||
id: conflicts | ||
run: | | ||
git fetch origin $TARGET_BRANCH | ||
git checkout $TARGET_BRANCH | ||
# Attempt to merge the main branch into the current branch | ||
if $(git merge --no-commit --no-ff $SOURCE_BRANCH); then | ||
echo "No merge conflicts detected." | ||
echo "HAS_CONFLICTS=false" >> $GITHUB_ENV | ||
else | ||
echo "Merge conflicts detected." | ||
echo "HAS_CONFLICTS=true" >> $GITHUB_ENV | ||
git merge --abort | ||
fi | ||
- name: Merge Change to Target Branch | ||
if: env.HAS_CONFLICTS == 'false' | ||
run: | | ||
git commit -m "Merge branch '$SOURCE_BRANCH' into $TARGET_BRANCH" | ||
git push origin $TARGET_BRANCH | ||
- name: Create PR to Target Branch | ||
if: env.HAS_CONFLICTS == 'true' | ||
run: | | ||
# Replace 'username' with the actual GitHub username of the reviewer. | ||
PR_URL=$(gh pr create --base $TARGET_BRANCH --head $SOURCE_BRANCH --title "sync: merge conflicts need to be resolved" --body "" --reviewer $REVIEWER) | ||
echo "Pull Request created: $PR_URL" |
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 |
---|---|---|
@@ -1,27 +1,19 @@ | ||
name: Build Pull Request Contents | ||
name: Build and Lint on Pull Request | ||
|
||
on: | ||
workflow_dispatch: | ||
pull_request: | ||
types: ["opened", "synchronize"] | ||
|
||
jobs: | ||
build-pull-request-contents: | ||
name: Build Pull Request Contents | ||
runs-on: ubuntu-20.04 | ||
permissions: | ||
pull-requests: read | ||
|
||
get-changed-files: | ||
runs-on: ubuntu-latest | ||
outputs: | ||
apiserver_changed: ${{ steps.changed-files.outputs.apiserver_any_changed }} | ||
web_changed: ${{ steps.changed-files.outputs.web_any_changed }} | ||
space_changed: ${{ steps.changed-files.outputs.deploy_any_changed }} | ||
steps: | ||
- name: Checkout Repository to Actions | ||
uses: actions/[email protected] | ||
with: | ||
token: ${{ secrets.ACCESS_TOKEN }} | ||
|
||
- name: Setup Node.js 18.x | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 18.x | ||
|
||
- uses: actions/checkout@v3 | ||
- name: Get changed files | ||
id: changed-files | ||
uses: tj-actions/changed-files@v41 | ||
|
@@ -31,17 +23,82 @@ jobs: | |
- apiserver/** | ||
web: | ||
- web/** | ||
- packages/** | ||
- 'package.json' | ||
- 'yarn.lock' | ||
- 'tsconfig.json' | ||
- 'turbo.json' | ||
deploy: | ||
- space/** | ||
- packages/** | ||
- 'package.json' | ||
- 'yarn.lock' | ||
- 'tsconfig.json' | ||
- 'turbo.json' | ||
lint-apiserver: | ||
needs: get-changed-files | ||
runs-on: ubuntu-latest | ||
if: needs.get-changed-files.outputs.apiserver_changed == 'true' | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.x' # Specify the Python version you need | ||
- name: Install Pylint | ||
run: python -m pip install ruff | ||
- name: Install Apiserver Dependencies | ||
run: cd apiserver && pip install -r requirements.txt | ||
- name: Lint apiserver | ||
run: ruff check --fix apiserver | ||
|
||
lint-web: | ||
needs: get-changed-files | ||
if: needs.get-changed-files.outputs.web_changed == 'true' | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup Node.js | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 18.x | ||
- run: yarn install | ||
- run: yarn lint --filter=web | ||
|
||
- name: Build Plane's Main App | ||
if: steps.changed-files.outputs.web_any_changed == 'true' | ||
run: | | ||
yarn | ||
yarn build --filter=web | ||
lint-space: | ||
needs: get-changed-files | ||
if: needs.get-changed-files.outputs.space_changed == 'true' | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup Node.js | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 18.x | ||
- run: yarn install | ||
- run: yarn lint --filter=space | ||
|
||
build-web: | ||
needs: lint-web | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup Node.js | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 18.x | ||
- run: yarn install | ||
- run: yarn build --filter=web | ||
|
||
- name: Build Plane's Deploy App | ||
if: steps.changed-files.outputs.deploy_any_changed == 'true' | ||
run: | | ||
yarn | ||
yarn build --filter=space | ||
build-space: | ||
needs: lint-space | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup Node.js | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 18.x | ||
- run: yarn install | ||
- run: yarn build --filter=space |
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,45 @@ | ||
name: Version Change Before Release | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- master | ||
|
||
jobs: | ||
check-version: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
with: | ||
ref: ${{ github.head_ref }} | ||
fetch-depth: 0 | ||
|
||
- name: Setup Node.js | ||
uses: actions/setup-node@v4 | ||
with: | ||
node-version: '18' | ||
|
||
- name: Get PR Branch version | ||
run: echo "PR_VERSION=$(node -p "require('./package.json').version")" >> $GITHUB_ENV | ||
|
||
- name: Fetch base branch | ||
run: git fetch origin master:master | ||
|
||
- name: Get Master Branch version | ||
run: | | ||
git checkout master | ||
echo "MASTER_VERSION=$(node -p "require('./package.json').version")" >> $GITHUB_ENV | ||
- name: Get master branch version and compare | ||
run: | | ||
echo "Comparing versions: PR version is $PR_VERSION, Master version is $MASTER_VERSION" | ||
if [ "$PR_VERSION" == "$MASTER_VERSION" ]; then | ||
echo "Version in PR branch is the same as in master. Failing the CI." | ||
exit 1 | ||
else | ||
echo "Version check passed. Versions are different." | ||
fi | ||
env: | ||
PR_VERSION: ${{ env.PR_VERSION }} | ||
MASTER_VERSION: ${{ env.MASTER_VERSION }} |
Oops, something went wrong.