Merge pull request #7912 from kathyoungaligent/feature/no-api-config
Feature/no api configpull/7934/head
commit
11bfe9970f
|
@ -234,6 +234,14 @@ github API will have a date instead of the machine hostname.
|
||||||
Defaults to `["gitlab.com"]`. A list of domains of GitLab servers.
|
Defaults to `["gitlab.com"]`. A list of domains of GitLab servers.
|
||||||
This is used if you use the `gitlab` repository type.
|
This is used if you use the `gitlab` repository type.
|
||||||
|
|
||||||
|
## use-github-api
|
||||||
|
|
||||||
|
Defaults to `true`. Similar to the `no-api` key on a specific repository,
|
||||||
|
setting `use-github-api` to `false` will define the global behavior for all
|
||||||
|
GitHub repositories to clone the repository as it would with any other git
|
||||||
|
repository instead of using the GitHub API. But unlike using the `git`
|
||||||
|
driver directly, Composer will still attempt to use GitHub's zip files.
|
||||||
|
|
||||||
## notify-on-install
|
## notify-on-install
|
||||||
|
|
||||||
Defaults to `true`. Composer allows repositories to define a notification URL,
|
Defaults to `true`. Composer allows repositories to define a notification URL,
|
||||||
|
|
|
@ -271,6 +271,10 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"use-github-api": {
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Defaults to true. If set to false, globally disables the use of the GitHub API for all GitHub repositories and clones the repository as it would for any other repository."
|
||||||
|
},
|
||||||
"archive-format": {
|
"archive-format": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The default archiving format when not provided on cli, defaults to \"tar\"."
|
"description": "The default archiving format when not provided on cli, defaults to \"tar\"."
|
||||||
|
|
|
@ -302,6 +302,7 @@ EOT
|
||||||
$uniqueConfigValues = array(
|
$uniqueConfigValues = array(
|
||||||
'process-timeout' => array('is_numeric', 'intval'),
|
'process-timeout' => array('is_numeric', 'intval'),
|
||||||
'use-include-path' => array($booleanValidator, $booleanNormalizer),
|
'use-include-path' => array($booleanValidator, $booleanNormalizer),
|
||||||
|
'use-github-api' => array($booleanValidator, $booleanNormalizer),
|
||||||
'preferred-install' => array(
|
'preferred-install' => array(
|
||||||
function ($val) {
|
function ($val) {
|
||||||
return in_array($val, array('auto', 'source', 'dist'), true);
|
return in_array($val, array('auto', 'source', 'dist'), true);
|
||||||
|
|
|
@ -61,6 +61,7 @@ class Config
|
||||||
'archive-format' => 'tar',
|
'archive-format' => 'tar',
|
||||||
'archive-dir' => '.',
|
'archive-dir' => '.',
|
||||||
'htaccess-protect' => true,
|
'htaccess-protect' => true,
|
||||||
|
'use-github-api' => true,
|
||||||
// valid keys without defaults (auth config stuff):
|
// valid keys without defaults (auth config stuff):
|
||||||
// bitbucket-oauth
|
// bitbucket-oauth
|
||||||
// github-oauth
|
// github-oauth
|
||||||
|
@ -323,10 +324,10 @@ class Config
|
||||||
|
|
||||||
case 'disable-tls':
|
case 'disable-tls':
|
||||||
return $this->config[$key] !== 'false' && (bool) $this->config[$key];
|
return $this->config[$key] !== 'false' && (bool) $this->config[$key];
|
||||||
|
|
||||||
case 'secure-http':
|
case 'secure-http':
|
||||||
return $this->config[$key] !== 'false' && (bool) $this->config[$key];
|
return $this->config[$key] !== 'false' && (bool) $this->config[$key];
|
||||||
|
case 'use-github-api':
|
||||||
|
return $this->config[$key] !== 'false' && (bool) $this->config[$key];
|
||||||
default:
|
default:
|
||||||
if (!isset($this->config[$key])) {
|
if (!isset($this->config[$key])) {
|
||||||
return null;
|
return null;
|
||||||
|
|
|
@ -56,7 +56,7 @@ class GitHubDriver extends VcsDriver
|
||||||
}
|
}
|
||||||
$this->cache = new Cache($this->io, $this->config->get('cache-repo-dir').'/'.$this->originUrl.'/'.$this->owner.'/'.$this->repository);
|
$this->cache = new Cache($this->io, $this->config->get('cache-repo-dir').'/'.$this->originUrl.'/'.$this->owner.'/'.$this->repository);
|
||||||
|
|
||||||
if (isset($this->repoConfig['no-api']) && $this->repoConfig['no-api']) {
|
if ( $this->config->get('use-github-api') === false || (isset($this->repoConfig['no-api']) && $this->repoConfig['no-api'] ) ){
|
||||||
$this->setupGitDriver($this->url);
|
$this->setupGitDriver($this->url);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue