summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2023-05-30 18:04:25 +1000
committerGitHub <noreply@github.com>2023-05-30 18:04:25 +1000
commitd29b3e372eea3166da6453db5eaa25b18b05b74b (patch)
tree1169a83fc36ef8b1d33604bc76704718992a5e92
parent33789d67f072e1284fe79dbe78507d2ad3069ada (diff)
parent01b3e8e8bb9764d300f7bd33a0e25483a7886224 (diff)
Merge pull request #2690 from jesseduffield/remove-ufizzi
-rw-r--r--.github/workflows/uffizzi-build.yml81
-rw-r--r--.github/workflows/uffizzi-preview.yml90
-rw-r--r--uffizzi/DockerfileTtyd17
-rw-r--r--uffizzi/docker-compose.uffizzi.yml20
4 files changed, 0 insertions, 208 deletions
diff --git a/.github/workflows/uffizzi-build.yml b/.github/workflows/uffizzi-build.yml
deleted file mode 100644
index 4cec3582e..000000000
--- a/.github/workflows/uffizzi-build.yml
+++ /dev/null
@@ -1,81 +0,0 @@
-name: Build PR Image
-on:
- pull_request:
- types: [opened, synchronize, reopened, closed]
-
-jobs:
- build-application:
- name: Build and Push `lazygit`
- runs-on: ubuntu-latest
- if: ${{ github.event_name != 'pull_request' || github.event.action != 'closed' }}
- outputs:
- tags: ${{ steps.meta.outputs.tags }}
- steps:
- - name: Checkout git repo
- uses: actions/checkout@v3
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v2
- - name: Generate UUID image name
- id: uuid
- run: echo "UUID_APP_TAG=$(uuidgen)" >> $GITHUB_ENV
- - name: Docker metadata
- id: meta
- uses: docker/metadata-action@v4
- with:
- images: registry.uffizzi.com/${{ env.UUID_APP_TAG }}
- tags: type=raw,value=60d
- - name: Build and Push Image to registry.uffizzi.com ephemeral registry
- uses: docker/build-push-action@v3
- with:
- push: true
- context: ./
- tags: ${{ steps.meta.outputs.tags }}
- labels: ${{ steps.meta.outputs.labels }}
- file: ./uffizzi/DockerfileTtyd
- cache-from: type=gha
- cache-to: type=gha,mode=max
-
-
- render-compose-file:
- name: Render Docker Compose File
- # Pass output of this workflow to another triggered by `workflow_run` event.
- runs-on: ubuntu-latest
- needs:
- - build-application
- outputs:
- compose-file-cache-key: ${{ steps.hash.outputs.hash }}
- steps:
- - name: Checkout git repo
- uses: actions/checkout@v3
- - name: Render Compose File
- run: |
- APP_IMAGE=$(echo ${{ needs.build-application.outputs.tags }})
- export APP_IMAGE
- # Render simple template from environment variables.
- envsubst < ./uffizzi/docker-compose.uffizzi.yml > docker-compose.rendered.yml
- cat docker-compose.rendered.yml
- - name: Upload Rendered Compose File as Artifact
- uses: actions/upload-artifact@v3
- with:
- name: preview-spec
- path: docker-compose.rendered.yml
- retention-days: 2
- - name: Upload PR Event as Artifact
- uses: actions/upload-artifact@v3
- with:
- name: preview-spec
- path: ${{ github.event_path }}
- retention-days: 2
-
- delete-preview:
- name: Call for Preview Deletion
- runs-on: ubuntu-latest
- if: ${{ github.event.action == 'closed' }}
- steps:
- # If this PR is closing, we will not render a compose file nor pass it to the next workflow.
- - name: Upload PR Event as Artifact
- uses: actions/upload-artifact@v3
- with:
- name: preview-spec
- path: ${{ github.event_path }}
- retention-days: 2
diff --git a/.github/workflows/uffizzi-preview.yml b/.github/workflows/uffizzi-preview.yml
deleted file mode 100644
index 784523877..000000000
--- a/.github/workflows/uffizzi-preview.yml
+++ /dev/null
@@ -1,90 +0,0 @@
-name: Deploy Uffizzi Preview
-
-on:
- workflow_run:
- workflows:
- - "Build PR Image"
- types:
- - completed
-
-jobs:
- cache-compose-file:
- name: Cache Compose File
- runs-on: ubuntu-latest
- if: ${{ github.event.workflow_run.conclusion == 'success' }}
- outputs:
- compose-file-cache-key: ${{ env.COMPOSE_FILE_HASH }}
- pr-number: ${{ env.PR_NUMBER }}
- steps:
- - name: 'Download artifacts'
- # Fetch output (zip archive) from the workflow run that triggered this workflow.
- uses: actions/github-script@v6
- with:
- script: |
- let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
- owner: context.repo.owner,
- repo: context.repo.repo,
- run_id: context.payload.workflow_run.id,
- });
- let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
- return artifact.name == "preview-spec"
- })[0];
- if (matchArtifact === undefined) {
- throw TypeError('Build Artifact not found!');
- }
- let download = await github.rest.actions.downloadArtifact({
- owner: context.repo.owner,
- repo: context.repo.repo,
- artifact_id: matchArtifact.id,
- archive_format: 'zip',
- });
- let fs = require('fs');
- fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/preview-spec.zip`, Buffer.from(download.data));
- - name: 'Unzip artifact'
- run: unzip preview-spec.zip
-
- - name: Read Event into ENV
- run: |
- echo 'EVENT_JSON<<EOF' >> $GITHUB_ENV
- cat event.json >> $GITHUB_ENV
- echo -e '\nEOF' >> $GITHUB_ENV
- - name: Hash Rendered Compose File
- id: hash
- # If the previous workflow was triggered by a PR close event, we will not have a compose file artifact.
- if: ${{ fromJSON(env.EVENT_JSON).action != 'closed' }}
- run: echo "COMPOSE_FILE_HASH=$(md5sum docker-compose.rendered.yml | awk '{ print $1 }')" >> $GITHUB_ENV
-
- - name: Cache Rendered Compose File
- if: ${{ fromJSON(env.EVENT_JSON).action != 'closed' }}
- uses: actions/cache@v3
- with:
- path: docker-compose.rendered.yml
- key: ${{ env.COMPOSE_FILE_HASH }}
-
- - name: Read PR Number From Event Object
- id: pr
- run: echo "PR_NUMBER=${{ fromJSON(env.EVENT_JSON).number }}" >> $GITHUB_ENV
-
- - name: DEBUG - Print Job Outputs
- if: ${{ runner.debug }}
- run: |
- echo "PR number: ${{ env.PR_NUMBER }}"
- echo "Compose file hash: ${{ env.COMPOSE_FILE_HASH }}"
- cat event.json
- deploy-uffizzi-preview:
- name: Use Remote Workflow to Preview on Uffizzi
- needs:
- - cache-compose-file
- if: ${{ github.event.workflow_run.conclusion == 'success' }}
- uses: UffizziCloud/preview-action/.github/workflows/reusable.yaml@v2
- with:
- # If this workflow was triggered by a PR close event, cache-key will be an empty string
- # and this reusable workflow will delete the preview deployment.
- compose-file-cache-key: ${{ needs.cache-compose-file.outputs.compose-file-cache-key }}
- compose-file-cache-path: docker-compose.rendered.yml
- server: https://app.uffizzi.com
- pr-number: ${{ needs.cache-compose-file.outputs.pr-number }}
- permissions:
- contents: read
- pull-requests: write
- id-token: write
diff --git a/uffizzi/DockerfileTtyd b/uffizzi/DockerfileTtyd
deleted file mode 100644
index 274c58037..000000000
--- a/uffizzi/DockerfileTtyd
+++ /dev/null
@@ -1,17 +0,0 @@
-
-FROM uffizzi/ttyd:golang1.18-alpine as build
-
-WORKDIR /go/src/github.com/jesseduffield/lazygit/
-COPY go.mod go.sum ./
-RUN go mod download
-COPY . .
-RUN CGO_ENABLED=0 GOOS=linux go build
-
-RUN apk update --quiet && \
- apk add -q --no-cache libgcc tini
-
-
-EXPOSE 7700/tcp
-
-ENTRYPOINT ["tini", "--"]
-CMD ["ttyd", "/bin/zsh"] \ No newline at end of file
diff --git a/uffizzi/docker-compose.uffizzi.yml b/uffizzi/docker-compose.uffizzi.yml
deleted file mode 100644
index 859a315ff..000000000
--- a/uffizzi/docker-compose.uffizzi.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-version: "3"
-
-x-uffizzi:
- ingress:
- service: application
- port: 7681
-
-services:
-
- application:
- image: "${APP_IMAGE}"
- entrypoint: ["/bin/bash", "-c"]
- command: ["ttyd /usr/local/go/bin/go run /go/src/github.com/jesseduffield/lazygit/cmd/integration_test/main.go tui"]
- ports:
- - "7700:7700"
- - "7681:7681"
- deploy:
- resources:
- limits:
- memory: 2000M