Scrutinizer GitHub App not installed

We could not synchronize checks via GitHub's checks API since Scrutinizer's GitHub App is not installed for this repository.

Install GitHub App

Passed
Push — add-update-command ( 3eac9b )
by Pedro
15:29
created

EnsureMinimumStabilityStep::canFix()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 1
c 1
b 0
f 1
nc 1
nop 1
dl 0
loc 3
rs 10
1
<?php
2
3
namespace Backpack\CRUD\app\Console\Commands\Upgrade\v7\Steps;
4
5
use Backpack\CRUD\app\Console\Commands\Upgrade\Step;
6
use Backpack\CRUD\app\Console\Commands\Upgrade\StepResult;
7
use Backpack\CRUD\app\Console\Commands\Upgrade\StepStatus;
8
9
class EnsureMinimumStabilityStep extends Step
10
{
11
    private ?string $currentStability = null;
12
13
    public function title(): string
14
    {
15
        return 'composer.json minimum-stability';
16
    }
17
18
    public function run(): StepResult
19
    {
20
        $this->currentStability = $this->context()->composerMinimumStability() ?? 'stable';
21
        $stability = $this->currentStability;
22
23
        if (in_array($stability, ['beta', 'alpha', 'dev'], true)) {
24
            return StepResult::success("minimum-stability is set to {$stability}.");
25
        }
26
27
        return StepResult::failure(
28
            'Set minimum-stability to beta (or more permissive) so Composer can install Backpack v7 beta releases.',
29
            ["Current minimum-stability: {$stability}"]
30
        );
31
    }
32
33
    public function canFix(StepResult $result): bool
34
    {
35
        return $result->status === StepStatus::Failed;
36
    }
37
38
    public function fix(StepResult $result): StepResult
39
    {
40
        $updated = $this->context()->updateComposerJson(function (array &$composer) {
41
            $composer['minimum-stability'] = 'beta';
42
        });
43
44
        if (! $updated) {
45
            return StepResult::failure('Could not update minimum-stability automatically.');
46
        }
47
48
        return StepResult::success('minimum-stability set to beta in composer.json.');
49
    }
50
}
51