pstream is dead; long live pstream taciturnaxolotl.github.io/pstream-ng/

feat: add lint workflow

dunkirk.sh c581a642 f5f621ef

verified
+24 -230
-181
.github/workflows/deploying.yml
··· 1 - name: Deploying 2 - 3 - on: 4 - push: 5 - branches: 6 - - master 7 - 8 - jobs: 9 - build_pwa: 10 - name: Build PWA 11 - runs-on: ubuntu-latest 12 - 13 - steps: 14 - - name: Checkout code 15 - uses: actions/checkout@v4 16 - 17 - - uses: pnpm/action-setup@v2 18 - with: 19 - version: 8 20 - 21 - - name: Install Node.js 22 - uses: actions/setup-node@v4 23 - with: 24 - node-version: 20 25 - cache: "pnpm" 26 - 27 - - name: Install pnpm packages 28 - run: pnpm install 29 - 30 - - name: Build project 31 - run: pnpm run build:pwa 32 - 33 - - name: Upload production-ready build files 34 - uses: actions/upload-artifact@v4 35 - with: 36 - name: pwa 37 - path: ./dist 38 - 39 - build: 40 - name: Build 41 - runs-on: ubuntu-latest 42 - 43 - steps: 44 - - name: Checkout code 45 - uses: actions/checkout@v4 46 - 47 - - uses: pnpm/action-setup@v2 48 - with: 49 - version: 8 50 - 51 - - name: Install Node.js 52 - uses: actions/setup-node@v4 53 - with: 54 - node-version: 20 55 - cache: "pnpm" 56 - 57 - - name: Install pnpm packages 58 - run: pnpm install 59 - 60 - - name: Build project 61 - run: pnpm run build 62 - 63 - - name: Upload production-ready build files 64 - uses: actions/upload-artifact@v4 65 - with: 66 - name: normal 67 - path: ./dist 68 - 69 - release: 70 - name: Release 71 - needs: [build, build_pwa] 72 - runs-on: ubuntu-latest 73 - 74 - steps: 75 - - name: Checkout code 76 - uses: actions/checkout@v4 77 - 78 - - name: Download PWA artifact 79 - uses: actions/download-artifact@v4 80 - with: 81 - name: pwa 82 - path: ./dist_pwa 83 - 84 - - name: Zip PWA files 85 - run: cd dist_pwa && zip -r ../p-stream.pwa.zip . 86 - 87 - - name: Download normal artifact 88 - uses: actions/download-artifact@v4 89 - with: 90 - name: normal 91 - path: ./dist_normal 92 - 93 - - name: Zip normal files 94 - run: cd dist_normal && zip -r ../p-stream.zip . 95 - 96 - - name: Get version 97 - id: package-version 98 - uses: martinbeentjes/npm-get-version-action@main 99 - 100 - - name: Create Release 101 - id: create_release 102 - uses: actions/create-release@v1 103 - env: 104 - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 105 - with: 106 - tag_name: ${{ steps.package-version.outputs.current-version }} 107 - release_name: P-Stream v${{ steps.package-version.outputs.current-version }} 108 - draft: false 109 - prerelease: false 110 - 111 - - name: Upload release (PWA) 112 - uses: actions/upload-release-asset@v1 113 - env: 114 - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 115 - with: 116 - upload_url: ${{ steps.create_release.outputs.upload_url }} 117 - asset_path: ./p-stream.pwa.zip 118 - asset_name: p-stream.pwa.zip 119 - asset_content_type: application/zip 120 - 121 - - name: Upload Release (Normal) 122 - uses: actions/upload-release-asset@v1 123 - env: 124 - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 125 - with: 126 - upload_url: ${{ steps.create_release.outputs.upload_url }} 127 - asset_path: ./p-stream.zip 128 - asset_name: p-stream.zip 129 - asset_content_type: application/zip 130 - 131 - registry: 132 - name: Push to registry 133 - runs-on: ubuntu-latest 134 - permissions: 135 - contents: read 136 - packages: write 137 - id-token: write 138 - 139 - env: 140 - REGISTRY: ghcr.io 141 - IMAGE_NAME: ${{ github.repository }} 142 - 143 - steps: 144 - - name: Checkout repository 145 - uses: actions/checkout@v4 146 - 147 - - name: Setup Docker buildx 148 - uses: docker/setup-buildx-action@v3 149 - 150 - - name: Get version 151 - id: package-version 152 - uses: martinbeentjes/npm-get-version-action@main 153 - 154 - - name: Log into registry ${{ env.REGISTRY }} 155 - uses: docker/login-action@v3 156 - with: 157 - registry: ${{ env.REGISTRY }} 158 - username: ${{ github.actor }} 159 - password: ${{ secrets.GITHUB_TOKEN }} 160 - 161 - - name: Extract Docker metadata 162 - id: meta 163 - uses: docker/metadata-action@v5 164 - with: 165 - images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} 166 - flavor: | 167 - latest=auto 168 - tags: | 169 - type=semver,pattern={{version}},value=v${{ steps.package-version.outputs.current-version }} 170 - 171 - - name: Build and push Docker image 172 - id: build-and-push 173 - uses: docker/build-push-action@v5 174 - with: 175 - push: true 176 - platforms: linux/amd64,linux/arm64 177 - context: . 178 - labels: ${{ steps.meta.outputs.labels }} 179 - tags: ${{ steps.meta.outputs.tags }} 180 - cache-from: type=gha 181 - cache-to: type=gha,mode=max
+24
.github/workflows/lint.yml
··· 1 + name: Lint 2 + 3 + on: 4 + push: 5 + branches: 6 + - main 7 + pull_request: 8 + 9 + jobs: 10 + lint: 11 + name: ESLint 12 + runs-on: ubuntu-latest 13 + steps: 14 + - uses: actions/checkout@v4 15 + 16 + - uses: pnpm/action-setup@v4 17 + 18 + - uses: actions/setup-node@v4 19 + with: 20 + node-version: 20 21 + cache: pnpm 22 + 23 + - run: pnpm install 24 + - run: pnpm run lint
-49
.github/workflows/linting_testing.yml
··· 1 - name: Linting and Testing 2 - 3 - on: 4 - push: 5 - branches: 6 - - master 7 - pull_request: 8 - 9 - jobs: 10 - linting: 11 - name: Run Linters 12 - runs-on: ubuntu-latest 13 - 14 - steps: 15 - - name: Checkout code 16 - uses: actions/checkout@v4 17 - 18 - - uses: pnpm/action-setup@v2 19 - with: 20 - version: 8 21 - 22 - - name: Install Node.js 23 - uses: actions/setup-node@v4 24 - with: 25 - node-version: 20 26 - cache: "pnpm" 27 - 28 - - name: Install pnpm packages 29 - run: pnpm install 30 - 31 - - name: Run ESLint 32 - run: pnpm run lint 33 - 34 - docker: 35 - name: Build Docker 36 - runs-on: ubuntu-latest 37 - 38 - steps: 39 - - name: Checkout repository 40 - uses: actions/checkout@v4 41 - 42 - - name: Setup Docker buildx 43 - uses: docker/setup-buildx-action@v3 44 - 45 - - name: Build Docker image 46 - uses: docker/build-push-action@v5 47 - with: 48 - push: false 49 - context: .