在我的个人 SVN 服务器(Linux、Svn、Apache 2、SSL、LDAP、DAV)上尝试了 Satis 后,效果很好;我正在尝试让它在我公司的 SVN 服务器(Windows、Visual SVN、SSL)上运行。
在这两种情况下,Satis 都在 Linux 下运行;我的是 Ubuntu,我公司的是 CentO。
在我公司的Satis实例上,它可以浏览仓库,它可以获取项目的composer.json,但它不会获取项目本身,与composer.json处于同一级别。
这是 satis.json 的匿名版本:
{
"name": "MyCompany",
"homepage": "http://my-server.net/satis",
"repositories": [
{
"type": "svn",
"url": "https://my-other-server.net/svn/my-project"
}
],
"config": {
"http-basic": {
"my-other-server.net": {
"username": "my-readonly-username",
"password": "my-readonly-password"
}
}
},
"archive": {
"directory": "dist",
"format": "tar",
"prefix-url": "http://my-server.net/satis/"
},
"require-all": true
}
这是项目 composer.json 的匿名版本:
{
"name": "mycompany/project",
"type": "symfony-bundle",
"description": "Project 1.0",
"keywords": [ "project" ],
"homepage": "http://my-company.fr/project",
"licence": "proprietary",
"version": "1.0",
"authors": [
{
"name": "My team",
"email": "address@inter.net"
}
],
"require": {
"php": ">=5.4"
},
"autoload": {
"psr-4": { "Mycompany\\ProjectBundle\\": "" }
}
}
这是我执行 Satis 的方式:
php bin/satis build mycompany.json web -vvv
最后,这是 Satis 的匿名详细结果:
Executing command (CWD): git describe --exact-match --tags
Executing command (CWD): git branch --no-color --no-abbrev -v
Executing command (CWD): hg branch
Executing command (CWD): svn info --xml
Failed to initialize global composer: Composer could not find the config file: /root/.composer/composer.json
To initialize a project, please create a composer.json file as described in the http://getcomposer.org/ "Getting Started" section
Scanning packages
Executing command (CWD): svn ls --verbose --non-interactive --username 'my-readonly-username' --password 'my-readonly-password' 'https://my-other-server.net/svn/my-project/trunk'
Executing command (CWD): svn ls --verbose --non-interactive --username 'my-readonly-username' --password 'my-readonly-password' 'https://my-other-server.net/svn/my-project/branches'
Executing command (CWD): svn ls --verbose --non-interactive --username 'my-readonly-username' --password 'my-readonly-password' 'https://my-other-server.net/svn/my-project/tags'
Reading /root/.composer/cache/repo/https---my-other-server.net-svn-my-project/-trunk--4-.json from cache
Reading /root/.composer/cache/repo/https---my-other-server.net-svn-my-project/-trunk--4-.json from cache
Reading composer.json of mycompany/project (trunk)
Reading /root/.composer/cache/repo/https---my-other-server.net-svn-my-project/-trunk--4-.json from cache
Importing branch trunk (dev-trunk)
Selected mycompany/project (dev-trunk)
Creating local downloads in 'web/dist'
Dumping 'mycompany/project-9999999-dev'.
- Installing mycompany/project (dev-trunk)
Checking out /trunk/@4
Failed: [RuntimeException] Package could not be downloaded, svn: OPTIONS de 'https://my-other-server.net/svn/project/trunk': Échec à l'autorisation (https://my-other-server.net)
[RuntimeException]
无法下载包,svn: OPTIONS de ' https://my-other-server.net/svn/project/trunk ': Échec à l'autorisation ( https://my-other-server.net )
Exception trace:
() at /srv/satis/vendor/composer/composer/src/Composer/Downloader/SvnDownloader.php:91
Composer\Downloader\SvnDownloader->execute() at /srv/satis/vendor/composer/composer/src/Composer/Downloader/SvnDownloader.php:33
Composer\Downloader\SvnDownloader->doDownload() at /srv/satis/vendor/composer/composer/src/Composer/Downloader/VcsDownloader.php:66
Composer\Downloader\VcsDownloader->download() at /srv/satis/vendor/composer/composer/src/Composer/Downloader/DownloadManager.php:201
Composer\Downloader\DownloadManager->download() at /srv/satis/vendor/composer/composer/src/Composer/Package/Archiver/ArchiveManager.php:144
Composer\Package\Archiver\ArchiveManager->archive() at /srv/satis/src/Composer/Satis/Command/BuildCommand.php:410
Composer\Satis\Command\BuildCommand->dumpDownloads() at /srv/satis/src/Composer/Satis/Command/BuildCommand.php:159
Composer\Satis\Command\BuildCommand->execute() at /srv/satis/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:253
Symfony\Component\Console\Command\Command->run() at /srv/satis/vendor/symfony/console/Symfony/Component/Console/Application.php:874
Symfony\Component\Console\Application->doRunCommand() at /srv/satis/vendor/symfony/console/Symfony/Component/Console/Application.php:195
Symfony\Component\Console\Application->doRun() at /srv/satis/src/Composer/Satis/Console/Application.php:52
Composer\Satis\Console\Application->doRun() at /srv/satis/vendor/symfony/console/Symfony/Component/Console/Application.php:126
Symfony\Component\Console\Application->run() at /srv/satis/bin/satis:9
build [--no-html-output] [--skip-errors] [file] [output-dir] [packages1] ... [packagesN]
其他元素:
- 调试时,我是 Satis 服务器上的 root,就像我执行它时一样
- 我试过 rm -rf /root/.composer
- 我试图在 Visual SVN 上授予 my-readonly-username 的完全权限
- 我试着喝更多的咖啡
这些都没有改变任何东西(除了咖啡)。