diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 0ecb019..0e3ca4a 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -26,13 +26,15 @@ jobs: - name: Cache apt packages uses: actions/cache@v5 with: - path: /var/cache/apt/archives + path: ~/.apt-cache key: apt-${{ runner.os }}-gtk4-${{ hashFiles('.github/workflows/*.yml') }} restore-keys: apt-${{ runner.os }}-gtk4- - name: Install build dependencies run: | + mkdir -p ~/.apt-cache/partial sudo apt-get update -q - sudo apt-get install -y clang libgtk-4-dev libglib2.0-dev libgirepository1.0-dev + sudo apt-get install -y -o dir::cache::archives="$HOME/.apt-cache" clang libgtk-4-dev libglib2.0-dev libgirepository1.0-dev + sudo chown -R "$USER" ~/.apt-cache - uses: anchore/sbom-action/download-syft@v0 - name: Install Task uses: go-task/setup-task@v2 @@ -46,3 +48,5 @@ jobs: with: github-token: ${{ secrets.GITHUB_TOKEN }} hooks: goreleaser + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2c5da2c..846b021 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -6,11 +6,12 @@ permissions: contents: read jobs: - golangci: - name: lint + ci: + name: lint, test, build runs-on: ubuntu-latest env: CC: clang + steps: - uses: actions/checkout@v6 - uses: actions/setup-go@v6 @@ -19,74 +20,25 @@ jobs: - name: Cache apt packages uses: actions/cache@v5 with: - path: /var/cache/apt/archives + path: ~/.apt-cache key: apt-${{ runner.os }}-gtk4-${{ hashFiles('.github/workflows/*.yml') }} restore-keys: apt-${{ runner.os }}-gtk4- - name: Install build dependencies run: | + mkdir -p ~/.apt-cache/partial sudo apt-get update -q - sudo apt-get install -y clang libgtk-4-dev libglib2.0-dev libgirepository1.0-dev + sudo apt-get install -y -o dir::cache::archives="$HOME/.apt-cache" clang libgtk-4-dev libglib2.0-dev libgirepository1.0-dev + sudo chown -R "$USER" ~/.apt-cache + - name: Install Task + uses: go-task/setup-task@v2 - name: golangci-lint uses: golangci/golangci-lint-action@v9 with: version: latest args: --timeout=10m - - test: - name: test - runs-on: ubuntu-latest - env: - CC: clang - - steps: - - uses: actions/checkout@v6 - - name: Install Go - uses: actions/setup-go@v6 - with: - go-version: '1.26' - - name: Cache apt packages - uses: actions/cache@v5 - with: - path: /var/cache/apt/archives - key: apt-${{ runner.os }}-gtk4-${{ hashFiles('.github/workflows/*.yml') }} - restore-keys: apt-${{ runner.os }}-gtk4- - - name: Install build dependencies - run: | - sudo apt-get update -q - sudo apt-get install -y clang libgtk-4-dev libglib2.0-dev libgirepository1.0-dev - - name: Install Task - uses: go-task/setup-task@v2 - name: Run Tests run: task test - - build: - name: build the application and plugins - runs-on: ubuntu-latest - env: - CC: clang - - steps: - - uses: actions/checkout@v6 - - name: Install Go - uses: actions/setup-go@v6 - with: - go-version: '1.26' - - name: Cache apt packages - uses: actions/cache@v5 - with: - path: /var/cache/apt/archives - key: apt-${{ runner.os }}-gtk4-${{ hashFiles('.github/workflows/*.yml') }} - restore-keys: apt-${{ runner.os }}-gtk4- - - name: Install build dependencies - run: | - sudo apt-get update -q - sudo apt-get install -y clang libgtk-4-dev libglib2.0-dev libgirepository1.0-dev - - - name: Install Task - uses: go-task/setup-task@v2 - - name: Build main application run: task build:linux-amd64 - - name: Build plugins run: task build:plugins