LoginSignup
4
6

More than 5 years have passed since last update.

自作repositoryをcomposer経由でinstallしたい

Last updated at Posted at 2016-10-01

背景

  • fuelPHPを触っていて、composer使いやすいな〜と思っていた
  • ansibleの自作rolesを複数repositoryで使いまわしやすいな〜と思ってた
  • git submoduleはよく分からなかった

導入方法

共有repository作成

githubbitbucket.org等々に登録しましょう。
今回は2段階認証設定済みのbitbucketのプライベートrepositoryで試してみます。

Screen Shot 2016-10-02 at 02.13.47.png

02.png

適用したいrepository

  • インストール
$ curl -sS https://getcomposer.org/installer | php
$ tree
.
└── composer.phar
  • composer.jsonの作成
$ cat composer.json
{
  "name": "iganari/package",
  "type": "project",
  "repositories": [
    {
      "type": "package",
      "package": {
        "name": "package-ansible-playbook-roles",
        "version": "1.0",
        "source": {
          "url": "ssh://git@bitbucket.org/iganari/package-ansible-playbook-roles.git",
          "type": "git",
          "reference": "master"
        }
      }
    }
  ],
  "require": {
      "package-ansible-playbook-roles": "1.0"
  },
  "config": {
    "vendor-dir": "opsfiles/vagrant/playbook/vendor/"
  }
}

後はインストールコマンドで入っていきます。

$ php composer.phar install
$ tree -L 2 opsfiles/vagrant/playbook/vendor/
opsfiles/vagrant/playbook/vendor/
├── autoload.php
├── composer
│   ├── ClassLoader.php
│   ├── LICENSE
│   ├── autoload_classmap.php
│   ├── autoload_namespaces.php
│   ├── autoload_psr4.php
│   ├── autoload_real.php
│   ├── autoload_static.php
│   └── installed.json
└── package-ansible-playbook-roles
    ├── readme.md
    └── ubuntu-16.04

3 directories, 10 files

なんか余計なもの色々入って来ましたが、ちゃんと意図してるものは入っています。

自作composerではまった点

  • 鍵の設定
    ~/.ssh/config にて、鍵をbitbucketと紐付けると思うのですが、その時に名前を変えているとそこでコケます。 素直に複数登録するか、composer.jsonをあわせましょう
個人的な設定を晒す
# to private Bitbucket
Host         bitbucket.org bitbucket.org.iganari
Hostname     bitbucket.org
Identityfile ~/.ssh/id_rsa-bitbucket-mykey
4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6