| @@ -1,12 +1,8 @@ | ||||
| name: fluent-bit-release | ||||
| name: Production Release to DockerHub | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     paths: | ||||
|       - "others/fluentbit" | ||||
|       - ".github/workflows/fluent-bit-release.yml" | ||||
|     branches:     | ||||
|       - next | ||||
|   release: | ||||
|     types: [released] | ||||
| 
 | ||||
| jobs: | ||||
|   arm64: | ||||
| @@ -23,13 +19,18 @@ jobs: | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         with: | ||||
|           context: others/fluentbit/ | ||||
|           context: . | ||||
|           platforms: linux/arm64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify-fluent-bit:1.0.0-arm64 | ||||
|           tags: coollabsio/coolify:${{steps.package-version.outputs.current-version}}-arm64 | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-arm64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-arm64,mode=max | ||||
|   amd64: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
| @@ -44,13 +45,18 @@ jobs: | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: others/fluentbit/ | ||||
|           context: . | ||||
|           platforms: linux/amd64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify-fluent-bit:1.0.0-amd64 | ||||
|           tags: coollabsio/coolify:${{steps.package-version.outputs.current-version}} | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-amd64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-amd64,mode=max | ||||
|   aarch64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
| @@ -65,13 +71,18 @@ jobs: | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         with: | ||||
|           context: others/fluentbit/ | ||||
|           context: . | ||||
|           platforms: linux/aarch64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify-fluent-bit:1.0.0-aarch64 | ||||
|           tags: coollabsio/coolify:${{steps.package-version.outputs.current-version}}-aarch64 | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-aarch64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-aarch64,mode=max | ||||
|   merge-manifest: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: [amd64, arm64, aarch64] | ||||
| @@ -87,7 +98,14 @@ jobs: | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Create & publish manifest | ||||
|         run: | | ||||
|           docker manifest create coollabsio/coolify-fluent-bit:1.0.0 --amend coollabsio/coolify-fluent-bit:1.0.0-amd64 --amend coollabsio/coolify-fluent-bit:1.0.0-arm64 --amend coollabsio/coolify-fluent-bit:1.0.0-aarch64 | ||||
|           docker manifest push coollabsio/coolify-fluent-bit:1.0.0 | ||||
|           docker buildx imagetools create --append coollabsio/coolify:${{steps.package-version.outputs.current-version}}-arm64 --append coollabsio/coolify:${{steps.package-version.outputs.current-version}}-aarch64 --tag coollabsio/coolify:${{steps.package-version.outputs.current-version}} | ||||
|           docker buildx imagetools create coollabsio/coolify:${{steps.package-version.outputs.current-version}} --tag coollabsio/coolify:latest | ||||
|       - uses: sarisia/actions-status-discord@v1 | ||||
|         if: always() | ||||
|         with: | ||||
|           webhook: ${{ secrets.DISCORD_WEBHOOK_PROD_RELEASE_CHANNEL }} | ||||
							
								
								
									
										103
									
								
								.github/workflows/production-release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										103
									
								
								.github/workflows/production-release.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,36 +1,14 @@ | ||||
| name: production-release | ||||
| name: Production Release to ghcr.io | ||||
|  | ||||
| on: | ||||
|   release: | ||||
|     types: [released] | ||||
|  | ||||
| env: | ||||
|   REGISTRY: ghcr.io | ||||
|   IMAGE_NAME: "coollabsio/coolify" | ||||
|  | ||||
| jobs: | ||||
|   arm64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v1 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v1 | ||||
|       - name: Login to DockerHub | ||||
|         uses: docker/login-action@v1 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/arm64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify:${{steps.package-version.outputs.current-version}}-arm64 | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-arm64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-arm64,mode=max | ||||
|   amd64: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
| @@ -40,23 +18,27 @@ jobs: | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to DockerHub | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|           tags: | | ||||
|             type=semver,pattern={{version}} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/amd64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify:${{steps.package-version.outputs.current-version}} | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-amd64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-amd64,mode=max | ||||
|           tags: ${{ steps.meta.outputs.tags }} | ||||
|           labels: ${{ steps.meta.outputs.labels }} | ||||
|   aarch64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
| @@ -66,26 +48,30 @@ jobs: | ||||
|         uses: docker/setup-qemu-action@v1 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v1 | ||||
|       - name: Login to DockerHub | ||||
|         uses: docker/login-action@v1 | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|           tags: | | ||||
|             type=semver,pattern={{version}} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/aarch64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify:${{steps.package-version.outputs.current-version}}-aarch64 | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-aarch64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-aarch64,mode=max | ||||
|           tags: ${{ steps.meta.outputs.tags }}-aarch64 | ||||
|           labels: ${{ steps.meta.outputs.labels }} | ||||
|   merge-manifest: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: [amd64, arm64, aarch64] | ||||
|     needs: [amd64, aarch64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
| @@ -93,18 +79,23 @@ jobs: | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to DockerHub | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|           tags: | | ||||
|             type=semver,pattern={{version}} | ||||
|       - name: Create & publish manifest | ||||
|         run: | | ||||
|           docker buildx imagetools create --append coollabsio/coolify:${{steps.package-version.outputs.current-version}}-arm64 --append coollabsio/coolify:${{steps.package-version.outputs.current-version}}-aarch64 --tag coollabsio/coolify:${{steps.package-version.outputs.current-version}} | ||||
|           docker buildx imagetools create coollabsio/coolify:${{steps.package-version.outputs.current-version}} --tag coollabsio/coolify:latest | ||||
|           docker buildx imagetools create --append ${{ fromJSON(steps.meta.outputs.json).tags[0] }}-aarch64 --tag ${{ fromJSON(steps.meta.outputs.json).tags[0] }} | ||||
|           docker buildx imagetools create --append ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest-aarch64 --tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest | ||||
|       - uses: sarisia/actions-status-discord@v1 | ||||
|         if: always() | ||||
|         with: | ||||
|   | ||||
							
								
								
									
										110
									
								
								.github/workflows/release-candidate.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										110
									
								
								.github/workflows/release-candidate.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,110 @@ | ||||
| name: Release Candidate to ghcr.io | ||||
|  | ||||
| on: | ||||
|   release: | ||||
|     types: [prereleased] | ||||
|  | ||||
| env: | ||||
|   REGISTRY: ghcr.io | ||||
|   IMAGE_NAME: "coollabsio/coolify" | ||||
|  | ||||
| jobs: | ||||
|   amd64: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|           tags: | | ||||
|             type=ref,event=branch | ||||
|             type=ref,event=pr | ||||
|             type=semver,pattern={{version}} | ||||
|             type=semver,pattern={{major}}.{{minor}} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/amd64 | ||||
|           push: true | ||||
|           tags: ${{ steps.meta.outputs.tags }} | ||||
|           labels: ${{ steps.meta.outputs.labels }} | ||||
|   aarch64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v1 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v1 | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN }} | ||||
|       - name: Extract metadata | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|           tags: | | ||||
|             type=ref,event=branch | ||||
|             type=ref,event=pr | ||||
|             type=semver,pattern={{version}} | ||||
|             type=semver,pattern={{major}}.{{minor}} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/aarch64 | ||||
|           push: true | ||||
|           tags: ${{ steps.meta.outputs.tags }}-aarch64 | ||||
|           labels: ${{ steps.meta.outputs.labels }} | ||||
|   merge-manifest: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: [amd64, aarch64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|           tags: | | ||||
|             type=ref,event=branch | ||||
|             type=ref,event=pr | ||||
|             type=semver,pattern={{version}} | ||||
|             type=semver,pattern={{major}}.{{minor}} | ||||
|       - name: Create & publish manifest | ||||
|         run: | | ||||
|           docker buildx imagetools create --append ${{ steps.meta.outputs.tags }}-aarch64 --tag ${{ steps.meta.outputs.tags }} | ||||
|       - uses: sarisia/actions-status-discord@v1 | ||||
|         if: always() | ||||
|         with: | ||||
|           webhook: ${{ secrets.DISCORD_WEBHOOK_DEV_RELEASE_CHANNEL }} | ||||
| @@ -1,19 +1,18 @@ | ||||
| name: pocketbase-release | ||||
| name: Staging Release to DockerHub | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     paths: | ||||
|       - "others/pocketbase/*" | ||||
|       - ".github/workflows/pocketbase-release.yml" | ||||
|     branches: | ||||
|       - next | ||||
|       - main | ||||
|       - "next" | ||||
| 
 | ||||
| jobs: | ||||
|   arm64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         with: | ||||
|           ref: "next" | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v1 | ||||
|       - name: Set up Docker Buildx | ||||
| @@ -23,18 +22,25 @@ jobs: | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         with: | ||||
|           context: others/pocketbase/ | ||||
|           context: . | ||||
|           platforms: linux/arm64 | ||||
|           push: true | ||||
|           tags: coollabsio/pocketbase:0.12.3-arm64 | ||||
|           tags: coollabsio/coolify:next-arm64 | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-next-arm64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-next-arm64,mode=max | ||||
|   amd64: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         with: | ||||
|           ref: "next" | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
| @@ -44,37 +50,21 @@ jobs: | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: others/pocketbase/ | ||||
|           context: . | ||||
|           platforms: linux/amd64 | ||||
|           push: true | ||||
|           tags: coollabsio/pocketbase:0.12.3-amd64 | ||||
|   aarch64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v1 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v1 | ||||
|       - name: Login to DockerHub | ||||
|         uses: docker/login-action@v1 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         with: | ||||
|           context: others/pocketbase/ | ||||
|           platforms: linux/aarch64 | ||||
|           push: true | ||||
|           tags: coollabsio/pocketbase:0.12.3-aarch64 | ||||
|           tags: coollabsio/coolify:next | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-next-amd64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-next-amd64,mode=max | ||||
|   merge-manifest: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: [amd64, arm64, aarch64] | ||||
|     needs: [arm64, amd64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
| @@ -89,5 +79,8 @@ jobs: | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Create & publish manifest | ||||
|         run: | | ||||
|           docker manifest create coollabsio/pocketbase:0.12.3 --amend coollabsio/pocketbase:0.12.3-amd64 --amend coollabsio/pocketbase:0.12.3-arm64 --amend coollabsio/pocketbase:0.12.3-aarch64 | ||||
|           docker manifest push coollabsio/pocketbase:0.12.3 | ||||
|           docker buildx imagetools create --append coollabsio/coolify:next-arm64 --tag coollabsio/coolify:next | ||||
|       - uses: sarisia/actions-status-discord@v1 | ||||
|         if: always() | ||||
|         with: | ||||
|           webhook: ${{ secrets.DISCORD_WEBHOOK_DEV_RELEASE_CHANNEL }} | ||||
							
								
								
									
										109
									
								
								.github/workflows/staging-release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										109
									
								
								.github/workflows/staging-release.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,45 +1,14 @@ | ||||
| name: staging-release | ||||
| name: Staging Release to ghcr.io | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     paths: | ||||
|       - "**" | ||||
|       - "!others/fluentbit" | ||||
|       - "!others/pocketbase" | ||||
|       - "!.github/workflows/fluent-bit-release.yml" | ||||
|       - "!.github/workflows/pocketbase-release.yml" | ||||
|     branches: | ||||
|       - next | ||||
|     branches-ignore: | ||||
|       - "main" | ||||
| env: | ||||
|   REGISTRY: ghcr.io | ||||
|   IMAGE_NAME: "coollabsio/coolify" | ||||
|  | ||||
| jobs: | ||||
|   arm64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         with: | ||||
|           ref: "next" | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v1 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v1 | ||||
|       - name: Login to DockerHub | ||||
|         uses: docker/login-action@v1 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v2 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/arm64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify:next-arm64 | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-next-arm64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-next-arm64,mode=max | ||||
|   amd64: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
| @@ -51,26 +20,58 @@ jobs: | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to DockerHub | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|       - name: Get current package version | ||||
|         uses: martinbeentjes/npm-get-version-action@v1.2.3 | ||||
|         id: package-version | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata (tags, labels) | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/amd64 | ||||
|           push: true | ||||
|           tags: coollabsio/coolify:next | ||||
|           cache-from: type=registry,ref=coollabsio/coolify:buildcache-next-amd64 | ||||
|           cache-to: type=registry,ref=coollabsio/coolify:buildcache-next-amd64,mode=max | ||||
|           tags: ${{ steps.meta.outputs.tags }} | ||||
|           labels: ${{ steps.meta.outputs.labels }} | ||||
|   aarch64: | ||||
|     runs-on: [self-hosted, arm64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         with: | ||||
|           ref: "next" | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata (tags, labels) | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v3 | ||||
|         with: | ||||
|           context: . | ||||
|           platforms: linux/aarch64 | ||||
|           push: true | ||||
|           tags: ${{ steps.meta.outputs.tags }}-aarch64 | ||||
|           labels: ${{ steps.meta.outputs.labels }} | ||||
|   merge-manifest: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: [arm64, amd64] | ||||
|     needs: [amd64, aarch64] | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
| @@ -78,14 +79,20 @@ jobs: | ||||
|         uses: docker/setup-qemu-action@v2 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v2 | ||||
|       - name: Login to DockerHub | ||||
|       - name: Login to ghcr.io | ||||
|         uses: docker/login-action@v2 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN  }} | ||||
|       - name: Extract metadata (tags, labels) | ||||
|         id: meta | ||||
|         uses: docker/metadata-action@v4 | ||||
|         with: | ||||
|           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||||
|       - name: Create & publish manifest | ||||
|         run: | | ||||
|           docker buildx imagetools create --append coollabsio/coolify:next-arm64 --tag coollabsio/coolify:next | ||||
|           docker buildx imagetools create --append ${{ steps.meta.outputs.tags }}-aarch64 --tag ${{ steps.meta.outputs.tags }} | ||||
|       - uses: sarisia/actions-status-discord@v1 | ||||
|         if: always() | ||||
|         with: | ||||
|   | ||||
| @@ -38,7 +38,7 @@ RUN curl -SL https://cdn.coollabs.io/bin/$TARGETPLATFORM/pack-$PACK_VERSION -o / | ||||
| RUN chmod +x ~/.docker/cli-plugins/docker-compose /usr/bin/docker /usr/local/bin/pack | ||||
|  | ||||
| COPY --from=build /app/apps/api/build/ . | ||||
| COPY --from=build /app/others/fluentbit/ ./fluentbit | ||||
| # COPY --from=build /app/others/fluentbit/ ./fluentbit | ||||
| COPY --from=build /app/apps/ui/build/ ./public | ||||
| COPY --from=build /app/apps/api/prisma/ ./prisma | ||||
| COPY --from=build /app/apps/api/package.json . | ||||
|   | ||||
| @@ -230,7 +230,7 @@ | ||||
|   description: "Open Source realtime backend in 1 file" | ||||
|   services: | ||||
|     $$id: | ||||
|       image: coollabsio/pocketbase:$$core_version | ||||
|       image: ghcr.io/coollabsio/pocketbase:$$core_version | ||||
|       volumes: | ||||
|         - $$id-data:/app/pb_data | ||||
|       ports: | ||||
|   | ||||
| @@ -402,14 +402,14 @@ async function autoUpdater() { | ||||
| 				if (!isDev) { | ||||
| 					const { isAutoUpdateEnabled } = await prisma.setting.findFirst(); | ||||
| 					if (isAutoUpdateEnabled) { | ||||
| 						await executeCommand({ command: `docker pull coollabsio/coolify:${latestVersion}` }); | ||||
| 						await executeCommand({ command: `docker pull ghcr.io/coollabsio/coolify:${latestVersion}` }); | ||||
| 						await executeCommand({ shell: true, command: `env | grep '^COOLIFY' > .env` }); | ||||
| 						await executeCommand({ | ||||
| 							command: `sed -i '/COOLIFY_AUTO_UPDATE=/cCOOLIFY_AUTO_UPDATE=${isAutoUpdateEnabled}' .env` | ||||
| 						}); | ||||
| 						await executeCommand({ | ||||
| 							shell: true, | ||||
| 							command: `docker run --rm -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock -v coolify-db coollabsio/coolify:${latestVersion} /bin/sh -c "env | grep COOLIFY > .env && echo 'TAG=${latestVersion}' >> .env && docker stop -t 0 coolify coolify-fluentbit && docker rm coolify coolify-fluentbit && docker compose pull && docker compose up -d --force-recreate"` | ||||
| 							command: `docker run --rm -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock -v coolify-db ghcr.io/coollabsio/coolify:${latestVersion} /bin/sh -c "env | grep COOLIFY > .env && echo 'TAG=${latestVersion}' >> .env && docker stop -t 0 coolify coolify-fluentbit && docker rm coolify coolify-fluentbit && docker compose pull && docker compose up -d --force-recreate"` | ||||
| 						}); | ||||
| 					} | ||||
| 				} else { | ||||
|   | ||||
| @@ -19,7 +19,7 @@ import { saveBuildLog } from './buildPacks/common'; | ||||
| import { scheduler } from './scheduler'; | ||||
| import type { ExecaChildProcess } from 'execa'; | ||||
|  | ||||
| export const version = '3.12.27'; | ||||
| export const version = '3.12.28'; | ||||
| export const isDev = process.env.NODE_ENV === 'development'; | ||||
| export const proxyPort = process.env.COOLIFY_PROXY_PORT; | ||||
| export const proxySecurePort = process.env.COOLIFY_PROXY_SECURE_PORT; | ||||
|   | ||||
| @@ -156,14 +156,14 @@ export async function update(request: FastifyRequest<Update>) { | ||||
| 	try { | ||||
| 		if (!isDev) { | ||||
| 			const { isAutoUpdateEnabled } = await prisma.setting.findFirst(); | ||||
| 			await executeCommand({ command: `docker pull coollabsio/coolify:${latestVersion}` }); | ||||
| 			await executeCommand({ command: `docker pull ghcr.io/coollabsio/coolify:${latestVersion}` }); | ||||
| 			await executeCommand({ shell: true, command: `env | grep COOLIFY > .env` }); | ||||
| 			await executeCommand({ | ||||
| 				command: `sed -i '/COOLIFY_AUTO_UPDATE=/cCOOLIFY_AUTO_UPDATE=${isAutoUpdateEnabled}' .env` | ||||
| 			}); | ||||
| 			await executeCommand({ | ||||
| 				shell: true, | ||||
| 				command: `docker run --rm -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock -v coolify-db coollabsio/coolify:${latestVersion} /bin/sh -c "env | grep COOLIFY > .env && echo 'TAG=${latestVersion}' >> .env && docker stop -t 0 coolify coolify-fluentbit && docker rm coolify coolify-fluentbit && docker compose pull && docker compose up -d --force-recreate"` | ||||
| 				command: `docker run --rm -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock -v coolify-db ghcr.io/coollabsio/coolify:${latestVersion} /bin/sh -c "env | grep COOLIFY > .env && echo 'TAG=${latestVersion}' >> .env && docker stop -t 0 coolify coolify-fluentbit && docker rm coolify coolify-fluentbit && docker compose pull && docker compose up -d --force-recreate"` | ||||
| 			}); | ||||
| 			return {}; | ||||
| 		} else { | ||||
|   | ||||
| @@ -158,7 +158,7 @@ | ||||
| 				id="dockerImage" | ||||
| 				name="dockerImage" | ||||
| 				required | ||||
| 				placeholder="coollabsio/coolify:0.0.1" | ||||
| 				placeholder="ghcr.io/coollabsio/coolify:0.0.1" | ||||
| 				bind:value={remoteImage} | ||||
| 			/> | ||||
| 			<button class="btn btn-sm btn-primary" type="submit">Revert Now</button> | ||||
|   | ||||
| @@ -34,7 +34,7 @@ services: | ||||
|     networks: | ||||
|       - coolify-infra | ||||
|  fluent-bit: | ||||
|     image: coollabsio/coolify-fluent-bit:1.0.0 | ||||
|     image: ghcr.io/coollabsio/fluent-bit:1.0.0 | ||||
|     command: /fluent-bit/bin/fluent-bit -c /fluent-bit/etc/fluent-bit-dev.conf | ||||
|     container_name: coolify-fluentbit | ||||
|     volumes: | ||||
|   | ||||
| @@ -2,7 +2,7 @@ version: '3.8' | ||||
|  | ||||
| services: | ||||
|   coolify: | ||||
|     image: coollabsio/coolify:${TAG:-latest} | ||||
|     image: ghcr.io/coollabsio/coolify:${TAG:-latest} | ||||
|     restart: always | ||||
|     container_name: coolify | ||||
|     ports: | ||||
| @@ -23,7 +23,7 @@ services: | ||||
|     networks: | ||||
|       - coolify-infra | ||||
|   fluent-bit: | ||||
|     image: coollabsio/coolify-fluent-bit:1.0.0 | ||||
|     image: ghcr.io/coollabsio/fluent-bit:1.0.0 | ||||
|     container_name: coolify-fluentbit | ||||
|     volumes: | ||||
|       - 'coolify-logs:/app/logs' | ||||
|   | ||||
| @@ -1,4 +0,0 @@ | ||||
| FROM fluent/fluent-bit:1.9.8 | ||||
| COPY ./fluent-bit.conf /fluent-bit/etc/fluent-bit.conf | ||||
| COPY ./fluent-bit-dev.conf /fluent-bit/etc/fluent-bit-dev.conf | ||||
| COPY ./parsers.conf /fluent-bit/etc/parsers.conf | ||||
| @@ -1,30 +0,0 @@ | ||||
| [SERVICE] | ||||
|  Parsers_file /fluent-bit/etc/parsers.conf | ||||
|  Flush 1 | ||||
|  Grace 30 | ||||
| [INPUT] | ||||
|  Name http | ||||
|  Host 0.0.0.0 | ||||
|  Port 24224 | ||||
| [FILTER] | ||||
|  Name parser | ||||
|  Match * | ||||
|  Key_Name log | ||||
|  Parser jsonparser | ||||
|  Reserve_Data True | ||||
| [OUTPUT] | ||||
|  Name file | ||||
|  Match * | ||||
|  Path /logs | ||||
|  Mkdir true | ||||
|  Format csv | ||||
| # [OUTPUT] | ||||
| #  Name influxdb  | ||||
| #  match * | ||||
| #  Host coolify-influxdb | ||||
| #  Port 8086 | ||||
| #  Database coolify | ||||
| #  Bucket coolify | ||||
| #  Org coolify | ||||
| #  HTTP_Token 12345678 | ||||
| #  Sequence_Tag  _seq | ||||
| @@ -1,30 +0,0 @@ | ||||
| [SERVICE] | ||||
|  Parsers_file /fluent-bit/etc/parsers.conf | ||||
|  Flush 1 | ||||
|  Grace 30 | ||||
| [INPUT] | ||||
|  Name http | ||||
|  Host 0.0.0.0 | ||||
|  Port 24224 | ||||
| [FILTER] | ||||
|  Name parser | ||||
|  Match * | ||||
|  Key_Name log | ||||
|  Parser jsonparser | ||||
|  Reserve_Data True | ||||
| [OUTPUT] | ||||
|  Name file | ||||
|  Match * | ||||
|  Path /app/logs | ||||
|  Mkdir true | ||||
|  Format csv | ||||
| # [OUTPUT] | ||||
| #  Name influxdb  | ||||
| #  match * | ||||
| #  Host coolify-influxdb | ||||
| #  Port 8086 | ||||
| #  Database coolify | ||||
| #  Bucket coolify | ||||
| #  Org coolify | ||||
| #  HTTP_Token 12345678 | ||||
| #  Sequence_Tag  _seq | ||||
| @@ -1,6 +0,0 @@ | ||||
| [PARSER] | ||||
|     Name        jsonparser | ||||
|     Format      json | ||||
|     Time_Key    time | ||||
|     Time_Format %Y-%m-%dT%H:%M:%S.%L | ||||
|     Time_Keep   On | ||||
| @@ -1,12 +0,0 @@ | ||||
| FROM alpine:3.17 | ||||
| ARG BUILDARCH | ||||
| ARG PB_VERSION=0.12.3 | ||||
| RUN apk add --no-cache \ | ||||
|     unzip \ | ||||
|     ca-certificates | ||||
|  | ||||
| ADD https://github.com/pocketbase/pocketbase/releases/download/v${PB_VERSION}/pocketbase_${PB_VERSION}_linux_${BUILDARCH}.zip /tmp/pb.zip | ||||
| RUN unzip /tmp/pb.zip -d /app/ | ||||
| RUN rm /tmp/pb.zip | ||||
| EXPOSE 8080 | ||||
| CMD ["/app/pocketbase", "serve", "--http=0.0.0.0:8080"] | ||||
| @@ -1,7 +1,7 @@ | ||||
| { | ||||
|   "name": "coolify", | ||||
|   "description": "An open-source & self-hostable Heroku / Netlify alternative.", | ||||
|   "version": "3.12.27", | ||||
|   "version": "3.12.28", | ||||
|   "license": "Apache-2.0", | ||||
|   "repository": "github:coollabsio/coolify", | ||||
|   "scripts": { | ||||
| @@ -32,7 +32,7 @@ | ||||
|     "build:api": "NODE_ENV=production pnpm run --filter api build", | ||||
|     "build:ui": "NODE_ENV=production pnpm run --filter ui build", | ||||
|     "dockerlogin": "echo $DOCKER_PASS | docker login --username=$DOCKER_USER --password-stdin", | ||||
|     "release:staging:amd": "docker build -t coollabsio/coolify:next . && docker push coollabsio/coolify:next", | ||||
|     "release:staging:amd": "docker build -t ghcr.io/coollabsio/coolify:next . && docker push ghcr.io/coollabsio/coolify:next", | ||||
|     "release:local": "rm -fr ./local-serve && mkdir ./local-serve && pnpm build && cp -Rp apps/api/build/* ./local-serve && cp -Rp apps/ui/build/ ./local-serve/public && cp -Rp apps/api/prisma/ ./local-serve/prisma && cp -Rp apps/api/package.json ./local-serve && env | grep '^COOLIFY_' > ./local-serve/.env && cd ./local-serve && pnpm install . && pnpm start" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Andras Bacsai
					Andras Bacsai