diff --git a/.github/workflows/build-and-push-docker-base-image.yml b/.github/workflows/build-and-push-docker-base-image.yml index 7e808ae4..427435da 100644 --- a/.github/workflows/build-and-push-docker-base-image.yml +++ b/.github/workflows/build-and-push-docker-base-image.yml @@ -13,26 +13,26 @@ env: jobs: build-and-push-docker-base-image: - runs-on: ubuntu-latest + runs-on: self-hosted steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up QEMU - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v2 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v4 with: context: . platforms: linux/amd64,linux/arm64,linux/arm/v7 diff --git a/.github/workflows/build-and-push-docker-image-dev.yml b/.github/workflows/build-and-push-docker-image-dev.yml new file mode 100644 index 00000000..88027278 --- /dev/null +++ b/.github/workflows/build-and-push-docker-image-dev.yml @@ -0,0 +1,34 @@ +name: Build and push Docker DEV image + +on: + push: + branches: [master] + +jobs: + build-and-push-docker-image-dev: + runs-on: self-hosted + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Login to GitHub Container Registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and push + uses: docker/build-push-action@v4 + with: + context: . + platforms: linux/amd64,linux/arm64,linux/arm/v7 + push: true + tags: | + ghcr.io/plankanban/planka:dev diff --git a/.github/workflows/build-and-push-docker-image.yml b/.github/workflows/build-and-push-docker-image.yml index a210dd4c..47bb7376 100644 --- a/.github/workflows/build-and-push-docker-image.yml +++ b/.github/workflows/build-and-push-docker-image.yml @@ -6,19 +6,19 @@ on: jobs: build-and-push-docker-image: - runs-on: ubuntu-latest + runs-on: self-hosted steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up QEMU - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v2 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} @@ -32,7 +32,7 @@ jobs: script: return context.payload.release.tag_name.replace('v', '') - name: Build and push - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v4 with: context: . platforms: linux/amd64,linux/arm64,linux/arm/v7 diff --git a/.github/workflows/helm-chart-release.yml b/.github/workflows/helm-chart-release.yml index f4ad1bc0..5e7f150e 100644 --- a/.github/workflows/helm-chart-release.yml +++ b/.github/workflows/helm-chart-release.yml @@ -13,10 +13,10 @@ jobs: # see: https://docs.github.com/en/actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token permissions: contents: write - runs-on: ubuntu-latest + runs-on: self-hosted steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 diff --git a/Dockerfile b/Dockerfile index cf7816d9..456d717c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,7 +5,8 @@ WORKDIR /app COPY server/package.json server/package-lock.json . RUN npm install npm@latest --global \ - && npm clean-install --omit=dev + && npm install pnpm --global \ + && pnpm install --prod FROM node:lts AS client @@ -14,7 +15,8 @@ WORKDIR /app COPY client/package.json client/package-lock.json . RUN npm install npm@latest --global \ - && npm clean-install --omit=dev + && npm install pnpm --global \ + && pnpm install --prod COPY client . RUN DISABLE_ESLINT_PLUGIN=true npm run build diff --git a/client/src/components/UserInformationEdit/UserInformationEdit.jsx b/client/src/components/UserInformationEdit/UserInformationEdit.jsx index f580cdc8..0a740591 100644 --- a/client/src/components/UserInformationEdit/UserInformationEdit.jsx +++ b/client/src/components/UserInformationEdit/UserInformationEdit.jsx @@ -1,4 +1,5 @@ import { dequal } from 'dequal'; +import omit from 'lodash/omit'; import pickBy from 'lodash/pickBy'; import React, { useCallback, useMemo, useRef } from 'react'; import PropTypes from 'prop-types'; @@ -9,7 +10,7 @@ import { useForm } from '../../hooks'; import styles from './UserInformationEdit.module.scss'; -const UserInformationEdit = React.memo(({ defaultData, onUpdate }) => { +const UserInformationEdit = React.memo(({ defaultData, isNameEditable, onUpdate }) => { const [t] = useTranslation(); const [data, handleFieldChange] = useForm(() => ({ @@ -32,13 +33,17 @@ const UserInformationEdit = React.memo(({ defaultData, onUpdate }) => { const nameField = useRef(null); const handleSubmit = useCallback(() => { - if (!cleanData.name) { - nameField.current.select(); - return; - } + if (isNameEditable) { + if (!cleanData.name) { + nameField.current.select(); + return; + } - onUpdate(cleanData); - }, [onUpdate, cleanData]); + onUpdate(cleanData); + } else { + onUpdate(omit(cleanData, 'name')); + } + }, [isNameEditable, onUpdate, cleanData]); return (