1. 授权认证
  2. 获取用户个人信息
  3. 项目协同
  4. 代码托管
  5. 持续集成
  6. 制品仓库
  7. 测试管理
  8. 文档管理
  1. 项目协同
  2. 代码仓库
  3. DevOps 实践之旅
  4. 一分钟开始持续集成之旅
  5. 持续部署
  6. 制品库

安装 PHP 依赖包

PHP 有两种常用扩展依赖包:

  • C 扩展:使用 pecl 安装;
  • PHP 扩展:使用 composer 安装;

pecl

CODING 持续集成为 Ubuntu 系统,可使用 apt 命令安装 pecl 扩展:

pipeline {
  agent any
  stages {
    stage('检出') {
      steps {
        checkout([$class: 'GitSCM', branches: [[name: env.GIT_BUILD_REF]], 
            userRemoteConfigs: [[url: env.GIT_REPO_URL, credentialsId: env.CREDENTIALS_ID]]])
      }
    }
    stage('安装依赖') {
      steps {
        sh 'update-alternatives --set php /usr/bin/php7.4'
        sh 'apt-get install -y php7.4-redis'
        sh 'php -i | grep redis'
      }
    }
  }
}

如果 apt 缺少某些 pecl 扩展,可使用 pecl 命令安装:

sh 'update-alternatives --set php /usr/bin/php7.4'
sh 'apt-get install -y php7.4-dev'
sh 'pecl install redis'
sh 'echo extension="redis.so" > /etc/php/7.4/cli/conf.d/20-redis.ini'
sh 'php -i | grep redis'

composer

公共制品库

composer 公共制品库 Packagist 在海外,内地用户访问可能很慢,建议切换为腾讯云镜像:

composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

# 恢复默认官方源(海外)
# composer config -g --unset repos.packagist

私有制品库

使用私有制品库需先获得用户名/密码,参考文档:《团队级制品库》

composer.json

进入 PHP 项目目录,设置制品库地址:

composer config repos.private-composer composer https://codes-farm-composer.pkg.coding.net/composer-demo/private-composer

可以看到 composer.json 发生了变化,将它提交到代码库。

auth.json

进入 PHP 项目目录,设置制品库用户名/密码:

composer config http-basic.codes-farm-composer.pkg.coding.net pt03xe33nvww 0ad2d123456

可以看到生成了 auth.json,将它忽略掉,不要提交到代码库。

本地安装

本地安装私有包:

composer require codes-farm/socialite-providers:0.3.0

然后将 composer.lock 提交到代码库。

持续集成构建

把用户名/密码填入环境变量:

pipeline {
  agent any
  stages {
    stage('检出') {
      steps {
        checkout([$class: 'GitSCM', branches: [[name: env.GIT_BUILD_REF]], 
            userRemoteConfigs: [[url: env.GIT_REPO_URL, credentialsId: env.CREDENTIALS_ID]]])
      }
    }
    stage('编译') {
      steps {
        sh "composer config http-basic.codes-farm-composer.pkg.coding.net $CODING_ARTIFACTS_USERNAME $CODING_ARTIFACTS_PASSWORD"
        sh "composer install"
      }
    }
  }
}

上一篇安装 Maven 依赖包
最近更新
感谢反馈有用
感谢反馈没用