dsco adaptation
This commit is contained in:
		
							parent
							
								
									07eea0f484
								
							
						
					
					
						commit
						60381824c0
					
				
							
								
								
									
										2
									
								
								.github/FUNDING.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/FUNDING.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,2 +0,0 @@ | ||||
| github: | ||||
|   - CorentinTh | ||||
							
								
								
									
										48
									
								
								.github/ISSUE_TEMPLATE/bug-report.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										48
									
								
								.github/ISSUE_TEMPLATE/bug-report.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,48 +0,0 @@ | ||||
| name: 🐞 Bug Report | ||||
| description: File a bug report. | ||||
| labels: ['bug', 'triage'] | ||||
| assignees: | ||||
|   - CorentinTh | ||||
| body: | ||||
|   - type: markdown | ||||
|     attributes: | ||||
|       value: | | ||||
|         Thanks for taking the time to fill out this bug report! | ||||
| 
 | ||||
|   - type: textarea | ||||
|     id: bug-description | ||||
|     attributes: | ||||
|       label: Describe the bug | ||||
|       description: A clear and concise description of what the bug is. If you intend to submit a PR for this issue, tell us in the description. Thanks! | ||||
|       placeholder: Bug description | ||||
|     validations: | ||||
|       required: true | ||||
| 
 | ||||
|   - type: textarea | ||||
|     id: what-happened | ||||
|     attributes: | ||||
|       label: What happened? | ||||
|       description: Also tell us, what did you expect to happen? If you have a screenshot, you can paste it here. | ||||
|       placeholder: Tell us what you see! | ||||
|       value: 'A bug happened!' | ||||
|     validations: | ||||
|       required: true | ||||
| 
 | ||||
|   - type: textarea | ||||
|     id: version | ||||
|     attributes: | ||||
|       label: System information | ||||
|       description: What is you environment? You can use the `npx envinfo --system --browsers` command to get this information. | ||||
|     validations: | ||||
|       required: true | ||||
| 
 | ||||
|   - type: dropdown | ||||
|     id: app-type | ||||
|     attributes: | ||||
|       label: Where did you encounter the bug? | ||||
|       options: | ||||
|         - Public app (it-tools.tech) | ||||
|         - A self hosted | ||||
|         - Other (installations, docker, etc.) | ||||
|     validations: | ||||
|       required: true | ||||
							
								
								
									
										1
									
								
								.github/ISSUE_TEMPLATE/config.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/ISSUE_TEMPLATE/config.yml
									
									
									
									
										vendored
									
									
								
							| @ -1 +0,0 @@ | ||||
| blank_issues_enabled: false | ||||
							
								
								
									
										56
									
								
								.github/ISSUE_TEMPLATE/feature-request.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										56
									
								
								.github/ISSUE_TEMPLATE/feature-request.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,56 +0,0 @@ | ||||
| name: 🚀 New feature proposal | ||||
| description: Propose a new feature/enhancement or tool idea for IT-Tools | ||||
| labels: ['enhancement', 'triage'] | ||||
| 
 | ||||
| body: | ||||
|   - type: markdown | ||||
|     attributes: | ||||
|       value: | | ||||
|         Thanks for your interest in the project and taking the time to fill out this feature report! | ||||
| 
 | ||||
|   - type: dropdown | ||||
|     id: request-type | ||||
|     attributes: | ||||
|       label: What type of request is this? | ||||
|       options: | ||||
|         - New tool idea | ||||
|         - New feature for an existing tool | ||||
|         - Deployment or CI/CD improvement | ||||
|         - Self-hosting improvement | ||||
|         - Other | ||||
|     validations: | ||||
|       required: true | ||||
| 
 | ||||
|   - type: textarea | ||||
|     id: feature-description | ||||
|     attributes: | ||||
|       label: Clear and concise description of the feature you are proposing | ||||
|       description: A clear and concise description of what the feature is. | ||||
|       placeholder: 'Example: a token generator tool' | ||||
|     validations: | ||||
|       required: true | ||||
| 
 | ||||
|   - type: textarea | ||||
|     id: alternative | ||||
|     attributes: | ||||
|       label: Is their example of this tool in the wild? | ||||
|       description: Provide link to already existing tool (like websites, apps, cli, ...) or npm packages that could be used or provide inspiration for the feature. | ||||
| 
 | ||||
|   - type: textarea | ||||
|     id: additional-context | ||||
|     attributes: | ||||
|       label: Additional context | ||||
|       description: Any other context or screenshots about the feature request here. | ||||
| 
 | ||||
|   - type: checkboxes | ||||
|     id: checkboxes | ||||
|     attributes: | ||||
|       label: Validations | ||||
|       description: Before submitting the issue, please make sure you do the following | ||||
|       options: | ||||
|         - label: Check the feature is not already implemented in the project. | ||||
|           required: true | ||||
|         - label: Check that there isn't already an issue that request the same feature to avoid creating a duplicate. | ||||
|           required: true | ||||
|         - label: Check that the feature can be implemented in a client side only app (IT-Tools is client side only, no server). | ||||
|           required: true | ||||
| @ -1,25 +0,0 @@ | ||||
| <!-- Thank you for contributing! --> | ||||
| 
 | ||||
| ### Description | ||||
| 
 | ||||
| <!-- Please insert your description here and provide especially info about the "what" this PR is solving --> | ||||
| 
 | ||||
| ### Additional context | ||||
| 
 | ||||
| <!-- e.g. is there anything you'd like reviewers to focus on? --> | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ### What is the purpose of this pull request? <!-- (put an "X" next to an item) --> | ||||
| 
 | ||||
| - [ ] Bug fix | ||||
| - [ ] New Feature | ||||
| - [ ] Documentation update | ||||
| - [ ] Other | ||||
| 
 | ||||
| ### Before submitting the PR, please make sure you do the following | ||||
| 
 | ||||
| - [ ] Submit the PR against the `dev` branch. | ||||
| - [ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate. | ||||
| - [ ] Provide a description in this PR that addresses **what** the PR is solving, or reference the issue that it solves (e.g. `fixes #123`). | ||||
| - [ ] Ideally, include relevant tests that fail without this PR but pass with it. | ||||
							
								
								
									
										
											BIN
										
									
								
								.github/logo-dark.png
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.github/logo-dark.png
									
									
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 40 KiB | 
							
								
								
									
										
											BIN
										
									
								
								.github/logo-white.png
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.github/logo-white.png
									
									
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 39 KiB | 
							
								
								
									
										10
									
								
								.github/sponsor-banner.svg
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/sponsor-banner.svg
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| Before Width: | Height: | Size: 57 KiB | 
							
								
								
									
										17
									
								
								.github/stale.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										17
									
								
								.github/stale.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,17 +0,0 @@ | ||||
| # Number of days of inactivity before an issue becomes stale | ||||
| daysUntilStale: 60 | ||||
| # Number of days of inactivity before a stale issue is closed | ||||
| daysUntilClose: 7 | ||||
| # Issues with these labels will never be considered stale | ||||
| exemptLabels: | ||||
|   - pinned | ||||
|   - security | ||||
| # Label to use when marking an issue as stale | ||||
| staleLabel: wontfix | ||||
| # Comment to post when marking an issue as stale. Set to `false` to disable | ||||
| markComment: > | ||||
|   This issue has been automatically marked as stale because it has not had | ||||
|   recent activity. It will be closed if no further activity occurs. Thank you | ||||
|   for your contributions. | ||||
| # Comment to post when closing a stale issue. Set to `false` to disable | ||||
| closeComment: false | ||||
							
								
								
									
										59
									
								
								.github/workflows/deploy-pages.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								.github/workflows/deploy-pages.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,59 @@ | ||||
| name: Deploy to GitHub Pages | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - main | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| permissions: | ||||
|   contents: read | ||||
|   pages: write | ||||
|   id-token: write | ||||
| 
 | ||||
| concurrency: | ||||
|   group: "pages" | ||||
|   cancel-in-progress: false | ||||
| 
 | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v4 | ||||
| 
 | ||||
|       - name: Enable corepack | ||||
|         run: corepack enable | ||||
| 
 | ||||
|       - name: Setup Node.js | ||||
|         uses: actions/setup-node@v4 | ||||
|         with: | ||||
|           node-version: 20 | ||||
|           cache: 'pnpm' | ||||
| 
 | ||||
|       - name: Setup Pages | ||||
|         uses: actions/configure-pages@v4 | ||||
| 
 | ||||
|       - name: Install dependencies | ||||
|         run: pnpm install | ||||
| 
 | ||||
|       - name: Build application | ||||
|         run: pnpm build | ||||
|         env: | ||||
|           BASE_URL: /${{ github.event.repository.name }}/ | ||||
| 
 | ||||
|       - name: Upload artifact | ||||
|         uses: actions/upload-pages-artifact@v3 | ||||
|         with: | ||||
|           path: ./dist | ||||
| 
 | ||||
|   deploy: | ||||
|     environment: | ||||
|       name: github-pages | ||||
|       url: ${{ steps.deployment.outputs.page_url }} | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: build | ||||
|     steps: | ||||
|       - name: Deploy to GitHub Pages | ||||
|         id: deployment | ||||
|         uses: actions/deploy-pages@v4 | ||||
							
								
								
									
										87
									
								
								.github/workflows/docker-nightly-release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										87
									
								
								.github/workflows/docker-nightly-release.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,87 +0,0 @@ | ||||
| name: Docker nightly release | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: | ||||
|   schedule: | ||||
|     - cron: '0 0 * * *' | ||||
| 
 | ||||
| jobs: | ||||
|   check_date: | ||||
|     runs-on: ubuntu-latest | ||||
|     name: Check latest commit | ||||
|     outputs: | ||||
|       should_run: ${{ steps.should_run.outputs.should_run }} | ||||
|     steps: | ||||
|       - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | ||||
|       - name: print latest_commit | ||||
|         run: echo ${{ github.sha }} | ||||
| 
 | ||||
|       - id: should_run | ||||
|         continue-on-error: true | ||||
|         name: check latest commit is less than a day | ||||
|         if: ${{ github.event_name == 'schedule' }} | ||||
|         run: test -z $(git rev-list  --after="24 hours"  ${{ github.sha }}) && echo "::set-output name=should_run::false" | ||||
| 
 | ||||
|   ci: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: check_date | ||||
|     if: ${{ needs.check_date.outputs.should_run != 'false' }} | ||||
| 
 | ||||
|     steps: | ||||
|       - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | ||||
|       - run: corepack enable | ||||
|       - uses: actions/setup-node@v3 | ||||
|         with: | ||||
|           node-version: 20 | ||||
|           cache: 'pnpm' | ||||
| 
 | ||||
|       - name: Install dependencies | ||||
|         run: pnpm i | ||||
| 
 | ||||
|       - name: Run linters | ||||
|         run: pnpm lint | ||||
| 
 | ||||
|       - name: Run unit test | ||||
|         run: pnpm test | ||||
| 
 | ||||
|       - name: Build the app | ||||
|         run: pnpm build | ||||
| 
 | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: | ||||
|       - ci | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | ||||
| 
 | ||||
|       - name: Login to GitHub Container Registry | ||||
|         uses: docker/login-action@v3 | ||||
|         with: | ||||
|           registry: ghcr.io | ||||
|           username: ${{ github.repository_owner }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN }} | ||||
| 
 | ||||
|       - name: Login to Docker Hub | ||||
|         uses: docker/login-action@v3 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
| 
 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v3 | ||||
| 
 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v3 | ||||
| 
 | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v5 | ||||
|         with: | ||||
|           context: . | ||||
|           file: ./Dockerfile | ||||
|           platforms: linux/amd64,linux/arm64 | ||||
|           push: true | ||||
|           tags: | | ||||
|             corentinth/it-tools:nightly | ||||
|             ghcr.io/corentinth/it-tools:nightly | ||||
							
								
								
									
										47
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										47
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,47 +0,0 @@ | ||||
| name: E2E tests | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
|     branches: | ||||
|       - main | ||||
| jobs: | ||||
|   test: | ||||
|     timeout-minutes: 10 | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       matrix: | ||||
|         shard: [1/3, 2/3, 3/3] | ||||
|     steps: | ||||
|       - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | ||||
| 
 | ||||
|       - run: corepack enable | ||||
| 
 | ||||
|       - uses: actions/setup-node@v3 | ||||
|         with: | ||||
|           node-version: 20 | ||||
|           cache: 'pnpm' | ||||
| 
 | ||||
|       - name: Get Playwright version | ||||
|         id: playwright-version | ||||
|         run: echo "PLAYWRIGHT_VERSION=$(jq -r .dependencies.playwright package.json)" >> "$GITHUB_OUTPUT" | ||||
| 
 | ||||
|       - name: Install dependencies | ||||
|         run: pnpm install | ||||
| 
 | ||||
|       - name: Build app | ||||
|         run: pnpm build | ||||
| 
 | ||||
|       - name: Restore Playwright browsers from cache | ||||
|         uses: actions/cache@v3 | ||||
|         with: | ||||
|           path: ~/.cache/ms-playwright | ||||
|           key: ${{ runner.os }}-playwright-${{ steps.playwright-version.outputs.PLAYWRIGHT_VERSION }}-${{ hashFiles('**/playwright.config.ts') }} | ||||
|           restore-keys: | | ||||
|             ${{ runner.os }}-playwright-${{ steps.playwright-version.outputs.PLAYWRIGHT_VERSION }}- | ||||
|             ${{ runner.os }}-playwright- | ||||
| 
 | ||||
|       - name: Install Playwright Browsers | ||||
|         run: pnpm exec playwright install --with-deps | ||||
| 
 | ||||
|       - name: Run Playwright tests | ||||
|         run: pnpm run test:e2e --shard=${{ matrix.shard }} | ||||
							
								
								
									
										104
									
								
								.github/workflows/releases.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										104
									
								
								.github/workflows/releases.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,104 +0,0 @@ | ||||
| name: Release new versions | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     tags: | ||||
|       - 'v*.*.*' | ||||
| 
 | ||||
| jobs: | ||||
|   docker-release: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       - name: Get release version | ||||
|         run: echo "RELEASE_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | ||||
| 
 | ||||
|       - name: Login to GitHub Container Registry | ||||
|         uses: docker/login-action@v3 | ||||
|         with: | ||||
|           registry: ghcr.io | ||||
|           username: ${{ github.repository_owner }} | ||||
|           password: ${{ secrets.GITHUB_TOKEN }} | ||||
| 
 | ||||
|       - name: Login to Docker Hub | ||||
|         uses: docker/login-action@v3 | ||||
|         with: | ||||
|           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||
|           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||
| 
 | ||||
|       - name: Set up QEMU | ||||
|         uses: docker/setup-qemu-action@v3 | ||||
| 
 | ||||
|       - name: Set up Docker Buildx | ||||
|         uses: docker/setup-buildx-action@v3 | ||||
| 
 | ||||
|       - name: Build and push | ||||
|         uses: docker/build-push-action@v5 | ||||
|         with: | ||||
|           context: . | ||||
|           file: ./Dockerfile | ||||
|           platforms: linux/amd64,linux/arm64 | ||||
|           push: true | ||||
|           tags: | | ||||
|             corentinth/it-tools:latest | ||||
|             corentinth/it-tools:${{ env.RELEASE_VERSION }} | ||||
|             ghcr.io/corentinth/it-tools:latest | ||||
|             ghcr.io/corentinth/it-tools:${{ env.RELEASE_VERSION}} | ||||
| 
 | ||||
|   github-release: | ||||
|     runs-on: ubuntu-latest | ||||
|     needs: docker-release | ||||
|     steps: | ||||
|       - name: Get release version | ||||
|         run: echo "RELEASE_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | ||||
| 
 | ||||
|       - run: corepack enable | ||||
| 
 | ||||
|       - uses: actions/setup-node@v3 | ||||
|         with: | ||||
|           node-version: 20 | ||||
|           cache: 'pnpm' | ||||
| 
 | ||||
|       - name: Install dependencies | ||||
|         run: pnpm i | ||||
| 
 | ||||
|       - name: Build the app | ||||
|         run: pnpm build | ||||
| 
 | ||||
|       - name: Zip the app | ||||
|         run: zip -r it-tools-${{ env.RELEASE_VERSION }}.zip dist/* | ||||
| 
 | ||||
|       - name: Get changelog | ||||
|         id: changelog | ||||
|         run: | | ||||
|           EOF=$(openssl rand -hex 8) | ||||
|           echo "changelog<<$EOF" >> $GITHUB_OUTPUT | ||||
|           node ./scripts/getLatestChangelog.mjs >> $GITHUB_OUTPUT | ||||
|           echo "$EOF" >> $GITHUB_OUTPUT | ||||
| 
 | ||||
|       - name: Create Release | ||||
|         uses: softprops/action-gh-release@v1 | ||||
|         with: | ||||
|           token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           files: it-tools-${{ env.RELEASE_VERSION }}.zip | ||||
|           tag_name: v${{ env.RELEASE_VERSION }} | ||||
|           draft: true | ||||
|           prerelease: false | ||||
|           body: | | ||||
|             ## Docker images | ||||
| 
 | ||||
|             - Docker Hub | ||||
|               - `corentinth/it-tools:latest` | ||||
|               - `corentinth/it-tools:${{ env.RELEASE_VERSION }}` | ||||
|             - GitHub Container Registry | ||||
|               - `ghcr.io/corentinth/it-tools:latest` | ||||
|               - `ghcr.io/corentinth/it-tools:${{ env.RELEASE_VERSION}}` | ||||
| 
 | ||||
|             ## Changelog | ||||
| 
 | ||||
|             ${{ steps.changelog.outputs.changelog }} | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user