DocumentationCommands
extends AbstractCommands
in package
Provides commands to generate Toolkit documentation.
Table of Contents
Properties
- $branch : string
- The documentation branch.
- $docsDir : string
- The documentation directory.
- $push : bool
- Whether to push the documentation.
- $repo : string
- The repository where the documentation is.
- $tmpDir : string
- A temporary directory.
- $token : string
- The GitHub token.
Methods
- getConfigurationFile() : string
- Path to YAML configuration file containing command defaults.
- getJson() : array<string|int, mixed>
- Returns the JSON parsed content.
- getWorkingDir() : string
- Returns the current working directory.
- isWebsiteInstalled() : bool
- Check if the website is installed.
- toolkitGenerateCommandsList() : int|CollectionBuilder
- Generate the list of commands in the commands.rst file.
- toolkitGenerateDocumentation() : int|CollectionBuilder
- Generate the documentation.
- getBin() : string
- Validate and return the path to given bin.
- getBinPath() : string
- Return the path to given bin.
- getConfigValue() : mixed|null
- Return the configuration value.
- getNodeBin() : string
- Validate and return the path to given bin from node packages.
- getNodeBinPath() : string
- Return the path to given bin from node packages.
- isJunit() : bool
- Check whether Junit option is being used, or env var is set.
- isSimulating() : bool
- Check if current command is being executed with option simulate.
- taskExecute() : CollectionBuilder
- Execute a command.
- taskProcess() : ReplaceBlock|CollectionBuilder
- Process the file.
- taskReplaceBlock() : ReplaceBlock|CollectionBuilder
- Replace block in a file.
- backupRelevantFiles() : CollectionBuilder
- Backup all *.rst files.
- cleanDir() : CollectionBuilder|FilesystemStack
- Clean up given directory.
- cleanUpRstFiles() : CollectionBuilder
- Clean up documentation to keep only .html files.
- downloadPhpDocPhar() : bool
- Ensure that the phpDoc phar file exists.
- gitAddCommitPush() : CollectionBuilder|ExecStack
- Git add commit and push to the documentation branch.
- gitClone() : array<string|int, mixed>
- Clone the documentation branch (hide output to avoid expose token).
Properties
$branch
The documentation branch.
private
string
$branch
$docsDir
The documentation directory.
private
string
$docsDir
$push
Whether to push the documentation.
private
bool
$push
$repo
The repository where the documentation is.
private
string
$repo
$tmpDir
A temporary directory.
private
string
$tmpDir
$token
The GitHub token.
private
string
$token
Methods
getConfigurationFile()
Path to YAML configuration file containing command defaults.
public
getConfigurationFile() : string
Return values
string —Configuration file path.
getJson()
Returns the JSON parsed content.
public
getJson(string $filename[, bool $throwException = true ]) : array<string|int, mixed>
Parameters
- $filename : string
- $throwException : bool = true
-
If the file is not found.
Return values
array<string|int, mixed> —Json parsed content.
getWorkingDir()
Returns the current working directory.
public
getWorkingDir() : string
Return values
string —The current working directory.
isWebsiteInstalled()
Check if the website is installed.
public
isWebsiteInstalled() : bool
Return values
booltoolkitGenerateCommandsList()
Generate the list of commands in the commands.rst file.
public
toolkitGenerateCommandsList(ConsoleIO $io) : int|CollectionBuilder
Parameters
- $io : ConsoleIO
Tags
Return values
int|CollectionBuilder —The command list task generated.
toolkitGenerateDocumentation()
Generate the documentation.
public
toolkitGenerateDocumentation(ConsoleIO $io[, array<string|int, mixed> $options = ['token' => InputOption::VALUE_REQUIRED, 'repo' => InputOption::VALUE_REQUIRED, 'docs-dir' => InputOption::VALUE_REQUIRED, 'tmp-dir' => InputOption::VALUE_REQUIRED, 'branch' => InputOption::VALUE_REQUIRED, 'push' => InputOption::VALUE_NONE] ]) : int|CollectionBuilder
Parameters
- $io : ConsoleIO
- $options : array<string|int, mixed> = ['token' => InputOption::VALUE_REQUIRED, 'repo' => InputOption::VALUE_REQUIRED, 'docs-dir' => InputOption::VALUE_REQUIRED, 'tmp-dir' => InputOption::VALUE_REQUIRED, 'branch' => InputOption::VALUE_REQUIRED, 'push' => InputOption::VALUE_NONE]
-
The option choice to generate documentation.
Tags
Return values
int|CollectionBuilder —The documentation task result.
getBin()
Validate and return the path to given bin.
protected
getBin(string $name) : string
Parameters
- $name : string
-
The bin to look for.
Tags
Return values
string —The bin path.
getBinPath()
Return the path to given bin.
protected
getBinPath(string $name) : string
Parameters
- $name : string
Return values
string —The path to given binary.
getConfigValue()
Return the configuration value.
protected
getConfigValue(string $key[, mixed|null $default = null ]) : mixed|null
Parameters
- $key : string
-
The config item to look up.
- $default : mixed|null = null
-
Default configuration value for the key item if neither has value nor exists.
Return values
mixed|null —The configuration value.
getNodeBin()
Validate and return the path to given bin from node packages.
protected
getNodeBin(string $name) : string
Parameters
- $name : string
-
The bin to look for.
Tags
Return values
string —The bin path.
getNodeBinPath()
Return the path to given bin from node packages.
protected
getNodeBinPath(string $name) : string
Parameters
- $name : string
Return values
string —The path to given binary.
isJunit()
Check whether Junit option is being used, or env var is set.
protected
isJunit() : bool
Return values
boolisSimulating()
Check if current command is being executed with option simulate.
protected
isSimulating() : bool
Return values
bool —True if using --simulate, false otherwise.
taskExecute()
Execute a command.
protected
taskExecute(array<string|int, string> $tasks) : CollectionBuilder
Parameters
- $tasks : array<string|int, string>
-
An array with tasks to execute.
Return values
CollectionBuilder —The task executed.
taskProcess()
Process the file.
protected
taskProcess(string $source[, string $destination = '' ]) : ReplaceBlock|CollectionBuilder
Parameters
- $source : string
-
The source file to process.
- $destination : string = ''
-
The destination file.
Return values
ReplaceBlock|CollectionBuilder —The file task processed.
taskReplaceBlock()
Replace block in a file.
protected
taskReplaceBlock([string $filename = '' ]) : ReplaceBlock|CollectionBuilder
Parameters
- $filename : string = ''
-
The file to process.
Return values
ReplaceBlock|CollectionBuilder —The file replaced.
backupRelevantFiles()
Backup all *.rst files.
private
backupRelevantFiles() : CollectionBuilder
Return values
CollectionBuilder —The backup files task.
cleanDir()
Clean up given directory.
private
cleanDir(string $directory[, bool $includeHidden = true ]) : CollectionBuilder|FilesystemStack
Parameters
- $directory : string
-
The directory to clean.
- $includeHidden : bool = true
-
If true, all hidden files will be removed.
Return values
CollectionBuilder|FilesystemStack —The directory cleaned.
cleanUpRstFiles()
Clean up documentation to keep only .html files.
private
cleanUpRstFiles() : CollectionBuilder
Return values
CollectionBuilder —The documentation files updated.
downloadPhpDocPhar()
Ensure that the phpDoc phar file exists.
private
downloadPhpDocPhar() : bool
Return values
bool —True if phar file exists.
gitAddCommitPush()
Git add commit and push to the documentation branch.
private
gitAddCommitPush() : CollectionBuilder|ExecStack
Return values
CollectionBuilder|ExecStack —The commit and push task status.
gitClone()
Clone the documentation branch (hide output to avoid expose token).
private
gitClone() : array<string|int, mixed>
Return values
array<string|int, mixed> —The documentation branch task cloned.