From babf59350bffdd8f835f0330b0e61fa3c3a63f72 Mon Sep 17 00:00:00 2001 From: Saeed Vaziry <61919774+saeedvaziry@users.noreply.github.com> Date: Wed, 5 Mar 2025 20:36:18 +0100 Subject: [PATCH] Fix run_action helper (#540) * Fix run_action helper * upgrade actions * upgrade actions --- .github/workflows/code-style.yml | 6 +++--- .github/workflows/docker-latest.yml | 8 ++++---- .github/workflows/docker-release.yml | 8 ++++---- .github/workflows/tests.yml | 5 +++-- app/Support/helpers.php | 16 +++++++++------- 5 files changed, 23 insertions(+), 20 deletions(-) diff --git a/.github/workflows/code-style.yml b/.github/workflows/code-style.yml index e77a008..baeb0bf 100644 --- a/.github/workflows/code-style.yml +++ b/.github/workflows/code-style.yml @@ -19,7 +19,7 @@ jobs: node-version: [ "20.x" ] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -28,7 +28,7 @@ jobs: - name: Cache Composer packages id: composer-cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: vendor key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }} @@ -43,7 +43,7 @@ jobs: run: ./vendor/bin/pint --test - name: Setup Node.js - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: node-version: "20.x" diff --git a/.github/workflows/docker-latest.yml b/.github/workflows/docker-latest.yml index 38a6fe9..62d0f07 100644 --- a/.github/workflows/docker-latest.yml +++ b/.github/workflows/docker-latest.yml @@ -11,16 +11,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up QEMU - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v2 - name: Login to Docker Hub - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/docker-release.yml b/.github/workflows/docker-release.yml index f508243..3afc945 100644 --- a/.github/workflows/docker-release.yml +++ b/.github/workflows/docker-release.yml @@ -10,16 +10,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up QEMU - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v2 - name: Login to Docker Hub - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3914070..2dee1c5 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -18,7 +18,7 @@ jobs: php: [ 8.2 ] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -27,12 +27,13 @@ jobs: - name: Cache Composer packages id: composer-cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: vendor key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }} restore-keys: | ${{ runner.os }}-php- + - name: Install dependencies if: steps.composer-cache.outputs.cache-hit != 'true' run: composer install --prefer-dist --no-progress --no-suggest diff --git a/app/Support/helpers.php b/app/Support/helpers.php index e7b3cfd..ccbe9d6 100755 --- a/app/Support/helpers.php +++ b/app/Support/helpers.php @@ -67,17 +67,19 @@ function run_action(object $static, Closure $callback): void try { $callback(); } catch (SSHError $e) { + $actions = []; + if ($e->getLog()) { + $actions[] = Action::make('View Logs') + ->url(App\Web\Pages\Servers\Logs\Index::getUrl([ + 'server' => $e->getLog()->server_id, + ])) + ->openUrlInNewTab(); + } Notification::make() ->danger() ->title($e->getMessage()) ->body($e->getLog()?->getContent(30)) - ->actions([ - Action::make('View Logs') - ->url(App\Web\Pages\Servers\Logs\Index::getUrl([ - 'server' => $e->getLog()?->server_id, - ])) - ->openUrlInNewTab(), - ]) + ->actions($actions) ->send(); if (method_exists($static, 'halt')) {