Compare commits
	
		
			No commits in common. "main" and "v1.0.1" have entirely different histories.
		
	
	
		
	
		
					 4 changed files with 19 additions and 51 deletions
				
			
		
							
								
								
									
										10
									
								
								.github/workflows/build-monorepo.yaml
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/build-monorepo.yaml
									
										
									
									
										vendored
									
									
								
							| 
						 | 
					@ -8,10 +8,6 @@ on:
 | 
				
			||||||
      PROJECT_ID:
 | 
					      PROJECT_ID:
 | 
				
			||||||
        required: true
 | 
					        required: true
 | 
				
			||||||
        type: string
 | 
					        type: string
 | 
				
			||||||
      DOCKER_REGISTRY:
 | 
					 | 
				
			||||||
        required: false
 | 
					 | 
				
			||||||
        type: string
 | 
					 | 
				
			||||||
        default: git.kvant.cloud
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
jobs:
 | 
					jobs:
 | 
				
			||||||
  build_and_push:
 | 
					  build_and_push:
 | 
				
			||||||
| 
						 | 
					@ -30,9 +26,7 @@ jobs:
 | 
				
			||||||
          tags: |
 | 
					          tags: |
 | 
				
			||||||
            type=ref,event=branch,branch=dev,suffix=-{{sha}},optional=true
 | 
					            type=ref,event=branch,branch=dev,suffix=-{{sha}},optional=true
 | 
				
			||||||
            type=ref,event=branch,branch=dev,value=dev,optional=true
 | 
					            type=ref,event=branch,branch=dev,value=dev,optional=true
 | 
				
			||||||
            type=match,event=tag,pattern=.*_?(v\d+\.\d+\.\d+(?:-[\w\d.-]+)?),group=1,prefix=,optional=true
 | 
					            type=match,event=tag,pattern=v(.*),group=1,prefix=v,optional=true
 | 
				
			||||||
            type=match,event=tag,pattern=.*_?(v\d+\.\d+\.\d+(?:-[\w\d.-]+)?),value=latest,optional=true
 | 
					 | 
				
			||||||
            type=match,event=tag,pattern=.*v(\\d+\\.\\d+\\.\\d+).*,group=1,prefix=v,optional=true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Print (debug) Docker meta JSON
 | 
					      - name: Print (debug) Docker meta JSON
 | 
				
			||||||
        uses: https://github.com/actions/github-script@v8
 | 
					        uses: https://github.com/actions/github-script@v8
 | 
				
			||||||
| 
						 | 
					@ -51,7 +45,7 @@ jobs:
 | 
				
			||||||
      - name: Login into gitea registry
 | 
					      - name: Login into gitea registry
 | 
				
			||||||
        uses: docker/login-action@v3
 | 
					        uses: docker/login-action@v3
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          registry: ${{ inputs.DOCKER_REGISTRY }}
 | 
					          registry: git.kvant.cloud
 | 
				
			||||||
          username: ${{ inputs.PACKAGE_WRITER_USERNAME }}
 | 
					          username: ${{ inputs.PACKAGE_WRITER_USERNAME }}
 | 
				
			||||||
          password: ${{ secrets.PACKAGE_WRITER_TOKEN }}
 | 
					          password: ${{ secrets.PACKAGE_WRITER_TOKEN }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										12
									
								
								.github/workflows/build.yaml
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.github/workflows/build.yaml
									
										
									
									
										vendored
									
									
								
							| 
						 | 
					@ -5,10 +5,6 @@ on:
 | 
				
			||||||
      PACKAGE_WRITER_USERNAME:
 | 
					      PACKAGE_WRITER_USERNAME:
 | 
				
			||||||
        required: true
 | 
					        required: true
 | 
				
			||||||
        type: string
 | 
					        type: string
 | 
				
			||||||
      DOCKER_REGISTRY:
 | 
					 | 
				
			||||||
        required: false
 | 
					 | 
				
			||||||
        type: string
 | 
					 | 
				
			||||||
        default: git.kvant.cloud
 | 
					 | 
				
			||||||
jobs:
 | 
					jobs:
 | 
				
			||||||
  build_and_push:
 | 
					  build_and_push:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
| 
						 | 
					@ -26,8 +22,10 @@ jobs:
 | 
				
			||||||
          tags: |
 | 
					          tags: |
 | 
				
			||||||
            type=ref,event=branch,branch=dev,suffix=-{{sha}},optional=true
 | 
					            type=ref,event=branch,branch=dev,suffix=-{{sha}},optional=true
 | 
				
			||||||
            type=ref,event=branch,branch=dev,value=dev,optional=true
 | 
					            type=ref,event=branch,branch=dev,value=dev,optional=true
 | 
				
			||||||
            type=match,event=tag,pattern=v(\d+\.\d+\.\d+(?:-[\w\d.-]+)?),group=1,prefix=v,optional=true
 | 
					            type=match,event=tag,pattern=v(.*),group=1,prefix=v,optional=true
 | 
				
			||||||
            type=match,event=tag,pattern=v(\d+\.\d+\.\d+(?:-[\w\d.-]+)?),value=latest,optional=true
 | 
					            type=match,event=tag,pattern=v(.*),value=latest,optional=true
 | 
				
			||||||
 | 
					          flavor: |
 | 
				
			||||||
 | 
					            latest=false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Print (debug) Docker meta JSON
 | 
					      - name: Print (debug) Docker meta JSON
 | 
				
			||||||
        uses: https://github.com/actions/github-script@v8
 | 
					        uses: https://github.com/actions/github-script@v8
 | 
				
			||||||
| 
						 | 
					@ -51,7 +49,7 @@ jobs:
 | 
				
			||||||
      - name: Login into gitea registry
 | 
					      - name: Login into gitea registry
 | 
				
			||||||
        uses: docker/login-action@v3
 | 
					        uses: docker/login-action@v3
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          registry: ${{ inputs.DOCKER_REGISTRY }}
 | 
					          registry: git.kvant.cloud
 | 
				
			||||||
          username: ${{ inputs.PACKAGE_WRITER_USERNAME }}
 | 
					          username: ${{ inputs.PACKAGE_WRITER_USERNAME }}
 | 
				
			||||||
          password: ${{ secrets.PACKAGE_WRITER_TOKEN }}
 | 
					          password: ${{ secrets.PACKAGE_WRITER_TOKEN }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										4
									
								
								.github/workflows/lint.yaml
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/lint.yaml
									
										
									
									
										vendored
									
									
								
							| 
						 | 
					@ -41,10 +41,6 @@ jobs:
 | 
				
			||||||
    env:
 | 
					    env:
 | 
				
			||||||
      NO_YARN_POSTINSTALL: 1
 | 
					      NO_YARN_POSTINSTALL: 1
 | 
				
			||||||
      FONTAWESOME_PACKAGE_TOKEN: ${{ secrets.FONTAWESOME_PACKAGE_TOKEN }}
 | 
					      FONTAWESOME_PACKAGE_TOKEN: ${{ secrets.FONTAWESOME_PACKAGE_TOKEN }}
 | 
				
			||||||
      TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
 | 
					 | 
				
			||||||
      TURBO_API: ${{ vars.TURBO_API }}
 | 
					 | 
				
			||||||
      TURBO_TEAM: ${{ vars.TURBO_TEAM }}
 | 
					 | 
				
			||||||
      TURBO_URL: ${{ vars.TURBO_URL }}
 | 
					 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - name: Checkout repository
 | 
					      - name: Checkout repository
 | 
				
			||||||
        uses: actions/checkout@v5
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										44
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										44
									
								
								README.md
									
										
									
									
									
								
							| 
						 | 
					@ -8,31 +8,13 @@ GitHub (forgejo) pipelines and other CI/CD utilities for the frontends Phoenix T
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## .Github Workflows: Build and push containers
 | 
					## .Github Workflows: Build and push containers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Docker / Container build
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Containers are built using dedicated `Dockerfile`s located in the `/docker` directory within each project repository. After the build, the images are pushed to the registry.
 | 
					Containers are built using dedicated `Dockerfile`s located in the `/docker` directory within each project repository. After the build, the images are pushed to the registry.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Tagging
 | 
					### `Build`
 | 
				
			||||||
 | 
					 | 
				
			||||||
Only tags following the specified patterns will be considered within container tags. Any other patterns will be ignored, ensuring adherence to the established tagging policy.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#### Standalone
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- v1.0.0
 | 
					 | 
				
			||||||
- v1.0.0-\<anything\>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#### Monorepo
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- <project_id>\_v1.0.0
 | 
					 | 
				
			||||||
- <project_id>\_v1.0.0-\<anything\>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
### Pipelines
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#### `Build`
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
A standard single-repository project with a `package.json` file located at the root, managing dependencies for the entire project.
 | 
					A standard single-repository project with a `package.json` file located at the root, managing dependencies for the entire project.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Vars (inherited)
 | 
					##### Vars (inherited)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Setuped on org or repo level.
 | 
					Setuped on org or repo level.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -40,13 +22,13 @@ Setuped on org or repo level.
 | 
				
			||||||
| ------------ | --------------- | -------- |
 | 
					| ------------ | --------------- | -------- |
 | 
				
			||||||
| `IMAGE_PATH` | Image base path | ✓        |
 | 
					| `IMAGE_PATH` | Image base path | ✓        |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Inputs
 | 
					##### Inputs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| Key                       | Description                     | Required |
 | 
					| Key                       | Description                     | Required |
 | 
				
			||||||
| ------------------------- | ------------------------------- | -------- |
 | 
					| ------------------------- | ------------------------------- | -------- |
 | 
				
			||||||
| `PACKAGE_WRITER_USERNAME` | User name of the package writer | ✓        |
 | 
					| `PACKAGE_WRITER_USERNAME` | User name of the package writer | ✓        |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Secrets
 | 
					##### Secrets
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Note: Secrets must be explicitly passed to workflows, even if they are defined at the repository or organization level. This is due to the way Forgejo handles secrets in workflows.
 | 
					Note: Secrets must be explicitly passed to workflows, even if they are defined at the repository or organization level. This is due to the way Forgejo handles secrets in workflows.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -55,11 +37,11 @@ Note: Secrets must be explicitly passed to workflows, even if they are defined a
 | 
				
			||||||
| `PACKAGE_WRITE_TOKEN`       | Accesstoken of the package writer                         | ✓        |
 | 
					| `PACKAGE_WRITE_TOKEN`       | Accesstoken of the package writer                         | ✓        |
 | 
				
			||||||
| `FONTAWESOME_PACKAGE_TOKEN` | Fontawesome Pro library token (Only needed if FA in use ) |          |
 | 
					| `FONTAWESOME_PACKAGE_TOKEN` | Fontawesome Pro library token (Only needed if FA in use ) |          |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#### `Build-Monorepo`
 | 
					### `Build-Monorepo`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
A monorepo project based on Turborepo, with individual projects located under the `/apps/<PROJECT_ID>` directory.
 | 
					A monorepo project based on Turborepo, with individual projects located under the `/apps/<PROJECT_ID>` directory.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Vars (inherited)
 | 
					##### Vars (inherited)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Setuped on org or repo level.
 | 
					Setuped on org or repo level.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -69,14 +51,14 @@ Setuped on org or repo level.
 | 
				
			||||||
| `TURBO_TEAM`      | Turbo repo team ID |          |
 | 
					| `TURBO_TEAM`      | Turbo repo team ID |          |
 | 
				
			||||||
| `TURBO_API`       | Turbo repo api url |          |
 | 
					| `TURBO_API`       | Turbo repo api url |          |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Inputs
 | 
					##### Inputs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| Key                       | Description                     | Required |
 | 
					| Key                       | Description                     | Required |
 | 
				
			||||||
| ------------------------- | ------------------------------- | -------- |
 | 
					| ------------------------- | ------------------------------- | -------- |
 | 
				
			||||||
| `PACKAGE_WRITER_USERNAME` | User name of the package writer | ✓        |
 | 
					| `PACKAGE_WRITER_USERNAME` | User name of the package writer | ✓        |
 | 
				
			||||||
| `PROJECT_ID`              | ID of the projcet               | ✓        |
 | 
					| `PROJECT_ID`              | ID of the projcet               | ✓        |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Secrets
 | 
					##### Secrets
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Note: Secrets must be explicitly passed to workflows, even if they are defined at the repository or organization level. This is due to the way Forgejo handles secrets in workflows.
 | 
					Note: Secrets must be explicitly passed to workflows, even if they are defined at the repository or organization level. This is due to the way Forgejo handles secrets in workflows.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -88,13 +70,11 @@ Note: Secrets must be explicitly passed to workflows, even if they are defined a
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## .Github Workflows: Linting, type checking, code analyzis, dependency tracking
 | 
					## .Github Workflows: Linting, type checking, code analyzis, dependency tracking
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Pipelines
 | 
					### `Lint`
 | 
				
			||||||
 | 
					 | 
				
			||||||
#### `Lint`
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
Linting, type checking, sonarqube, dependency tracking, any testing
 | 
					Linting, type checking, sonarqube, dependency tracking, any testing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Vars (inherited)
 | 
					##### Vars (inherited)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Setuped on org or repo level.
 | 
					Setuped on org or repo level.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -104,7 +84,7 @@ Setuped on org or repo level.
 | 
				
			||||||
| `TURBO_API`      | Turbo repo api url (only applicable on monorepos) |          |
 | 
					| `TURBO_API`      | Turbo repo api url (only applicable on monorepos) |          |
 | 
				
			||||||
| `SONAR_HOST_URL` | Sonarqube Host (required if sonarqube is enabled) |          |
 | 
					| `SONAR_HOST_URL` | Sonarqube Host (required if sonarqube is enabled) |          |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Inputs
 | 
					##### Inputs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| Key                  | Description                                                                        | Required |
 | 
					| Key                  | Description                                                                        | Required |
 | 
				
			||||||
| -------------------- | ---------------------------------------------------------------------------------- | -------- |
 | 
					| -------------------- | ---------------------------------------------------------------------------------- | -------- |
 | 
				
			||||||
| 
						 | 
					@ -115,7 +95,7 @@ Setuped on org or repo level.
 | 
				
			||||||
| `LINT_SCRIPT`        | Script which runs eslint; default: `yarn run lint`                                 |          |
 | 
					| `LINT_SCRIPT`        | Script which runs eslint; default: `yarn run lint`                                 |          |
 | 
				
			||||||
| `CHECK_TYPES_SCRIPT` | Script which runs tsc type checking: `yarn run check-types`                        |          |
 | 
					| `CHECK_TYPES_SCRIPT` | Script which runs tsc type checking: `yarn run check-types`                        |          |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###### Secrets
 | 
					##### Secrets
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Note: Secrets must be explicitly passed to workflows, even if they are defined at the repository or organization level. This is due to the way Forgejo handles secrets in workflows.
 | 
					Note: Secrets must be explicitly passed to workflows, even if they are defined at the repository or organization level. This is due to the way Forgejo handles secrets in workflows.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue