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

(chore): automatic release v0.0.2 #601

Closed
wants to merge 31 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
e448eeb
fix(deps): update dependency @trpc/client to v11.0.0-rc.382 (#568)
homarr-renovate[bot] May 28, 2024
c2185e3
fix: renovate automatic approval typo no file extension (#572)
Meierschlumpf May 29, 2024
9e499bd
fix(deps): update dependency eslint-plugin-react to ^7.34.2 (#567)
homarr-renovate[bot] May 29, 2024
2cb3e95
chore(deps): update node.js to v20.14.0 (#573)
homarr-renovate[bot] May 29, 2024
fe43e74
fix(deps): update dependency flag-icons to ^7.2.3 (#575)
homarr-renovate[bot] May 29, 2024
612b8d8
fix(deps): update dependency mysql2 to v3.9.9 (#576)
homarr-renovate[bot] May 29, 2024
dc7f455
chore(deps): update dependency @types/node to ^20.12.13 (#577)
homarr-renovate[bot] May 29, 2024
e030e06
chore(deps): update actions/checkout action to v4 (#571)
homarr-renovate[bot] May 29, 2024
dd2937a
feat: add docker container table (#520)
ajnart May 29, 2024
169feca
fix(deps): update dependency sass to ^1.77.3 (#579)
homarr-renovate[bot] May 29, 2024
b12d109
fix(deps): update mantine monorepo to ^7.10.1 (#581)
homarr-renovate[bot] May 30, 2024
ec29d77
chore(deps): update pnpm to v9.1.4 (#582)
homarr-renovate[bot] May 30, 2024
6d46e91
fix(deps): update dependency better-sqlite3 to ^10.1.0 (#584)
homarr-renovate[bot] May 30, 2024
ff84c2b
fix(deps): update dependency mysql2 to v3.10.0 (#585)
homarr-renovate[bot] May 30, 2024
79d977c
fix(deps): update dependency sass to ^1.77.4 (#586)
homarr-renovate[bot] May 31, 2024
d16281b
fix(deps): update dependency drizzle-kit to ^0.22.0 (#588)
homarr-renovate[bot] May 31, 2024
3b39e87
fix(deps): update dependency drizzle-orm to ^0.31.0 (#589)
homarr-renovate[bot] May 31, 2024
51fb7cb
fix(deps): update dependency drizzle-kit to ^0.22.1 (#590)
homarr-renovate[bot] May 31, 2024
96150f8
fix(deps): update dependency better-sqlite3 to v11 (#587)
homarr-renovate[bot] May 31, 2024
777473e
chore(deps): update dependency @types/node to ^20.12.14 (#591)
homarr-renovate[bot] May 31, 2024
e832bfb
chore(deps): update dependency @types/node to ^20.13.0 (#592)
homarr-renovate[bot] May 31, 2024
fef070c
fix(deps): update dependency mantine-react-table to v2.0.0-beta.4 (#593)
homarr-renovate[bot] May 31, 2024
b1b839f
fix(deps): update dependency prettier to ^3.3.0 (#594)
homarr-renovate[bot] Jun 1, 2024
26146f4
ci: add automatic release workflow (#583)
manuel-rw Jun 1, 2024
4523083
refactor: clean up workflows (#596)
manuel-rw Jun 1, 2024
7cc2736
fix: default branch for tag compare (#597)
manuel-rw Jun 1, 2024
d08bdf3
ci: fix branch to compare tags (#598)
manuel-rw Jun 1, 2024
4b304c7
ci: fix fetch depth (#599)
manuel-rw Jun 1, 2024
4ff39b2
ci: remove if condition from create PR step
manuel-rw Jun 1, 2024
a6a6734
ci: fix pr number target
manuel-rw Jun 1, 2024
67d4899
ci: add automerge label to create PR step
manuel-rw Jun 1, 2024
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
31 changes: 0 additions & 31 deletions .github/workflows/build.yml

This file was deleted.

16 changes: 14 additions & 2 deletions .github/workflows/code-quality.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Code quality analysis
name: "[Quality] Code Analysis"

on:
pull_request:
Expand All @@ -8,7 +8,7 @@ on:
merge_group:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}

# You can leverage Vercel Remote Caching with Turbo to speed up your builds
Expand Down Expand Up @@ -72,3 +72,15 @@ jobs:
# Only works if you set `reportOnFailure: true` in your vite config as specified above
if: always()
uses: davelosert/vitest-coverage-report-action@v2

build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup
uses: ./tooling/github/setup
- name: Copy env
shell: bash
run: cp .env.example .env
- name: Build
run: pnpm build
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@

# https://github.com/webiny/action-conventional-commits?tab=readme-ov-file

name: Conventional Commits
name: "[Conventions] Semantic Commits"

on:
pull_request:
Expand All @@ -12,5 +10,5 @@ jobs:
name: Conventional Commits
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: webiny/[email protected]
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: "Lint PR"
name: "[Conventions] Semantic PRs"

on:
pull_request_target:
Expand All @@ -11,8 +11,7 @@ permissions:
pull-requests: read

jobs:
main:
name: Validate PR title
validate-pull-request-title:
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Docker image
name: "[Deployment] Release"

on:
pull_request:
Expand Down Expand Up @@ -70,7 +70,7 @@ jobs:
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
images: "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}"
tags: |
type=raw,value=latest
type=raw,value=${{ steps.semver.outputs.next }}
Expand Down
82 changes: 82 additions & 0 deletions .github/workflows/deployment-weekly-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: "[Deployment] Automatic Weekly Release"

on:
schedule:
- cron: "0 19 * * 5" # https://crontab.guru/#0_19_*_*_5
workflow_dispatch:

permissions:
contents: write
pull-requests: write

jobs:
create-and-merge-pr:
runs-on: ubuntu-latest
steps:
- name: Discord notification
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: "Automatic release has been triggered: [run ${{ github.run_number }}](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})"
- name: Checkout repository
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Get Next Version
id: semver
uses: ietf-tools/semver-action@v1
with:
token: ${{ github.token }}
branch: dev
- name: Create pull request
uses: devops-infra/[email protected]
id: create-pull-request
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
title: "(chore): automatic release ${{ steps.semver.outputs.next }}"
old_string: "**This is an automatic release**.<br/>Manual action may be required for major bumps.<br/>Detected change to be ``${{ steps.semver.outputs.bump }}``<br/>Bump version from ``${{ steps.semver.outputs.current }}`` to ``${{ steps.semver.outputs.next }}``"
source_branch: dev
target_branch: main
label: "automerge"
- name: Discord notification
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: "Created a release PR ${{ steps.create-pull-request.outputs.url }} for version ${{ steps.semver.outputs.next }} (new behaviour: ${{ steps.semver.outputs.bump }})"
- id: automerge
if: ${{ steps.semver.outputs.bump != 'major' }}
name: automerge
uses: "pascalgn/[email protected]"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
MERGE_METHOD: merge # we prefer merge commits for merging to master
MERGE_COMMIT_MESSAGE: "(chore): automatic release ${{ steps.semver.outputs.next }}"
MERGE_DELETE_BRANCH: false # never set to true!
PULL_REQUEST: "${{ steps.create-pull-request.outputs.pr_number }}"
MERGE_RETRIES: 20 # 20 retries * MERGE_RETRY_SLEEP until step fails
MERGE_RETRY_SLEEP: 10000 # 10 seconds * MERGE_RETRIES until step fails
MERGE_REQUIRED_APPROVALS: 0 # do not require approvals

- name: Merged Discord notification
if: ${{ steps.automerge.outputs.mergeResult == 'merged' }}
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: "Merged PR ${{ steps.create-pull-request.outputs.url }} for release ${{ steps.semver.outputs.next }}"
- name: Major Bump Discord notification
if: ${{ steps.semver.outputs.bump == 'major' }}
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: "The release PR must be manually merged because the next version is a major version: ${{ steps.create-pull-request.outputs.url }} for release ${{ steps.semver.outputs.next }}"
- name: Discord Fail Notification
if: failure()
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: "The automatic release workflow [run ${{ github.run_number }}](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) has failed"
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Approve Renovate PRs
name: "[Dependency Updates] Auto Approve"
on:
pull_request:
types: [opened, synchronize]
Expand All @@ -9,7 +9,7 @@ jobs:

steps:
- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: Install GitHub CLI
run: sudo apt-get install -y gh
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM node:20.13.1-alpine AS base
FROM node:20.14.0-alpine AS base

FROM base AS builder
RUN apk add --no-cache libc6-compat
Expand Down
11 changes: 10 additions & 1 deletion apps/nextjs/next.config.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// Importing env files here to validate on build
import "./src/env.mjs";
import "@homarr/auth/env.mjs";
import "./src/env.mjs";

/** @type {import("next").NextConfig} */
const config = {
Expand All @@ -9,6 +9,15 @@ const config = {
/** We already do linting and typechecking as separate tasks in CI */
eslint: { ignoreDuringBuilds: true },
typescript: { ignoreBuildErrors: true },
webpack: (config) => {
// eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
config.module.rules.push({
test: /\.node$/,
loader: "node-loader",
});
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
return config;
},
experimental: {
optimizePackageImports: ["@mantine/core", "@mantine/hooks", "@tabler/icons-react"],
},
Expand Down
21 changes: 12 additions & 9 deletions apps/nextjs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,34 +31,36 @@
"@homarr/ui": "workspace:^0.1.0",
"@homarr/validation": "workspace:^0.1.0",
"@homarr/widgets": "workspace:^0.1.0",
"@mantine/colors-generator": "^7.10.0",
"@mantine/hooks": "^7.10.0",
"@mantine/modals": "^7.10.0",
"@mantine/tiptap": "^7.10.0",
"@mantine/colors-generator": "^7.10.1",
"@mantine/hooks": "^7.10.1",
"@mantine/modals": "^7.10.1",
"@mantine/tiptap": "^7.10.1",
"@homarr/server-settings": "workspace:^0.1.0",
"@t3-oss/env-nextjs": "^0.10.1",
"@tanstack/react-query": "^5.40.0",
"@tanstack/react-query-devtools": "^5.40.0",
"@tanstack/react-query-next-experimental": "5.40.0",
"@trpc/client": "11.0.0-rc.377",
"@trpc/client": "11.0.0-rc.382",
"@trpc/next": "next",
"@trpc/react-query": "next",
"@trpc/server": "next",
"@xterm/addon-canvas": "^0.7.0",
"@xterm/addon-fit": "0.10.0",
"@xterm/xterm": "^5.5.0",
"chroma-js": "^2.4.2",
"clsx": "^2.1.1",
"dayjs": "^1.11.11",
"dotenv": "^16.4.5",
"flag-icons": "^7.2.2",
"flag-icons": "^7.2.3",
"glob": "^10.4.1",
"jotai": "^2.8.2",
"mantine-react-table": "2.0.0-beta.4",
"next": "^14.2.3",
"postcss-preset-mantine": "^1.15.0",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-error-boundary": "^4.0.13",
"sass": "^1.77.2",
"sass": "^1.77.4",
"superjson": "2.2.1",
"use-deep-compare-effect": "^1.8.1"
},
Expand All @@ -67,12 +69,13 @@
"@homarr/prettier-config": "workspace:^0.1.0",
"@homarr/tsconfig": "workspace:^0.1.0",
"@types/chroma-js": "2.4.4",
"@types/node": "^20.12.12",
"@types/node": "^20.13.0",
"@types/react": "^18.3.3",
"@types/react-dom": "^18.3.0",
"concurrently": "^8.2.2",
"eslint": "^8.57.0",
"prettier": "^3.2.5",
"node-loader": "^2.0.0",
"prettier": "^3.3.0",
"tsx": "4.11.0",
"typescript": "^5.4.5"
},
Expand Down
Loading
Loading