Code Duplication    Length = 53-80 lines in 3 locations

lib/Doctrine/Migrations/Tools/Console/Command/DiffCommand.php 1 location

@@ 35-87 (lines=53) @@
32
    /** @var string */
33
    protected static $defaultName = 'migrations:diff';
34
35
    protected function configure() : void
36
    {
37
        parent::configure();
38
39
        $this
40
            ->setAliases(['diff'])
41
            ->setDescription('Generate a migration by comparing your current database to your mapping information.')
42
            ->setHelp(<<<EOT
43
The <info>%command.name%</info> command generates a migration by comparing your current database to your mapping information:
44
45
    <info>%command.full_name%</info>
46
47
EOT
48
            )
49
            ->addOption(
50
                'namespace',
51
                null,
52
                InputOption::VALUE_REQUIRED,
53
                'The namespace to use for the migration (must be in the list of configured namespaces)'
54
            )
55
            ->addOption(
56
                'filter-expression',
57
                null,
58
                InputOption::VALUE_REQUIRED,
59
                'Tables which are filtered by Regular Expression.'
60
            )
61
            ->addOption(
62
                'formatted',
63
                null,
64
                InputOption::VALUE_NONE,
65
                'Format the generated SQL.'
66
            )
67
            ->addOption(
68
                'line-length',
69
                null,
70
                InputOption::VALUE_REQUIRED,
71
                'Max line length of unformatted lines.',
72
                120
73
            )
74
            ->addOption(
75
                'check-database-platform',
76
                null,
77
                InputOption::VALUE_OPTIONAL,
78
                'Check Database Platform to the generated code.',
79
                false
80
            )
81
            ->addOption(
82
                'allow-empty-diff',
83
                null,
84
                InputOption::VALUE_NONE,
85
                'Do not throw an exception when no changes are detected.'
86
            );
87
    }
88
89
    /**
90
     * @throws InvalidOptionUsage

lib/Doctrine/Migrations/Tools/Console/Command/VersionCommand.php 1 location

@@ 33-100 (lines=68) @@
30
    /** @var bool */
31
    private $markMigrated;
32
33
    protected function configure() : void
34
    {
35
        $this
36
            ->setAliases(['version'])
37
            ->setDescription('Manually add and delete migration versions from the version table.')
38
            ->addArgument(
39
                'version',
40
                InputArgument::OPTIONAL,
41
                'The version to add or delete.',
42
                null
43
            )
44
            ->addOption(
45
                'add',
46
                null,
47
                InputOption::VALUE_NONE,
48
                'Add the specified version.'
49
            )
50
            ->addOption(
51
                'delete',
52
                null,
53
                InputOption::VALUE_NONE,
54
                'Delete the specified version.'
55
            )
56
            ->addOption(
57
                'all',
58
                null,
59
                InputOption::VALUE_NONE,
60
                'Apply to all the versions.'
61
            )
62
            ->addOption(
63
                'range-from',
64
                null,
65
                InputOption::VALUE_OPTIONAL,
66
                'Apply from specified version.'
67
            )
68
            ->addOption(
69
                'range-to',
70
                null,
71
                InputOption::VALUE_OPTIONAL,
72
                'Apply to specified version.'
73
            )
74
            ->setHelp(<<<EOT
75
The <info>%command.name%</info> command allows you to manually add, delete or synchronize migration versions from the version table:
76
77
    <info>%command.full_name% MIGRATION-FQCN --add</info>
78
79
If you want to delete a version you can use the <comment>--delete</comment> option:
80
81
    <info>%command.full_name% MIGRATION-FQCN --delete</info>
82
83
If you want to synchronize by adding or deleting all migration versions available in the version table you can use the <comment>--all</comment> option:
84
85
    <info>%command.full_name% --add --all</info>
86
    <info>%command.full_name% --delete --all</info>
87
88
If you want to synchronize by adding or deleting some range of migration versions available in the version table you can use the <comment>--range-from/--range-to</comment> option:
89
90
    <info>%command.full_name% --add --range-from=MIGRATION-FQCN --range-to=MIGRATION-FQCN</info>
91
    <info>%command.full_name% --delete --range-from=MIGRATION-FQCN --range-to=MIGRATION-FQCN</info>
92
93
You can also execute this command without a warning message which you need to interact with:
94
95
    <info>%command.full_name% --no-interaction</info>
96
EOT
97
            );
98
99
        parent::configure();
100
    }
101
102
    /**
103
     * @throws InvalidOptionUsage

lib/Doctrine/Migrations/Tools/Console/Command/ExecuteCommand.php 1 location

@@ 28-107 (lines=80) @@
25
    /** @var string */
26
    protected static $defaultName = 'migrations:execute';
27
28
    protected function configure() : void
29
    {
30
        $this
31
            ->setAliases(['execute'])
32
            ->setDescription(
33
                'Execute one or more migration versions up or down manually.'
34
            )
35
            ->addArgument(
36
                'versions',
37
                InputArgument::REQUIRED|InputArgument::IS_ARRAY,
38
                'The versions to execute.',
39
                null
40
            )
41
            ->addOption(
42
                'write-sql',
43
                null,
44
                InputOption::VALUE_OPTIONAL,
45
                'The path to output the migration SQL file. Defaults to current working directory.',
46
                false
47
            )
48
            ->addOption(
49
                'dry-run',
50
                null,
51
                InputOption::VALUE_NONE,
52
                'Execute the migration as a dry run.'
53
            )
54
            ->addOption(
55
                'up',
56
                null,
57
                InputOption::VALUE_NONE,
58
                'Execute the migration up.'
59
            )
60
            ->addOption(
61
                'down',
62
                null,
63
                InputOption::VALUE_NONE,
64
                'Execute the migration down.'
65
            )
66
            ->addOption(
67
                'query-time',
68
                null,
69
                InputOption::VALUE_NONE,
70
                'Time all the queries individually.'
71
            )
72
            ->setHelp(<<<EOT
73
The <info>%command.name%</info> command executes migration versions up or down manually:
74
75
    <info>%command.full_name% FQCN</info>
76
77
You can show more information about the process by increasing the verbosity level. To see the
78
executed queries, set the level to debug with <comment>-vv</comment>:
79
80
    <info>%command.full_name% FQCN -vv</info>
81
82
If no <comment>--up</comment> or <comment>--down</comment> option is specified it defaults to up:
83
84
    <info>%command.full_name% FQCN --down</info>
85
86
You can also execute the migration as a <comment>--dry-run</comment>:
87
88
    <info>%command.full_name% FQCN --dry-run</info>
89
90
You can output the prepared SQL statements to a file with <comment>--write-sql</comment>:
91
92
    <info>%command.full_name% FQCN --write-sql</info>
93
94
Or you can also execute the migration without a warning message which you need to interact with:
95
96
    <info>%command.full_name% FQCN --no-interaction</info>
97
98
All the previous commands accept multiple migration versions, allowing you run execute more than
99
one migration at once:
100
101
    <info>%command.full_name% FQCN-1 FQCN-2 ...FQCN-n </info>
102
103
EOT
104
        );
105
106
        parent::configure();
107
    }
108
109
    protected function execute(InputInterface $input, OutputInterface $output) : int
110
    {