承接 ibrows/deploy-bundle 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ibrows/deploy-bundle

Composer 安装命令:

composer require ibrows/deploy-bundle

包简介

Bundle for executing commands after deployment or composer install based on current server and/or environment

README 文档

README

composer install # --> local installation and cache:clear, schema:update, etc.
php bin/console ibrows:deploy test # --> Tag current version in GIT with test_X (X is calculated automatically)
php bin/console ibrows:deploy test --immediate="atrila" # --> Same as above, but connects afterwards over ssh to atrila and execute "ibrows_deploy" so you dont have to wait

Configuration

ibrows_deploy:
    server: %deploy_server%
    environment: %deploy_environment%
    basic_auth_users:
        - { user: ibrows, pass: 4EmbOAwVyiOSFFLI }
        - { user: projectname, pass: projectpass }
    immediate_process_strategies:
        atrila:
            serviceid: ibrows_deploy.server.immediateprocessstrategy.atrila
            options:
                user: __SSH_USER__
                passphrase: %deploy_atrila_ssh_passphrase%
                publicKeyFile: %deploy_atrila_ssh_publickeyfile%
                privateKeyFile: %deploy_atrila_ssh_publickeyfile%
                config: %deploy_atrila_ssh_config%
    server_environments:
        localhost_dev:
            cacheclear:
                - {priority: 1, args: { symfonyEnv: dev }}
            assetsinstall:
                - {priority: 2, args: { symlink: true }}
            asseticdump:
                - {priority: 3, args: { symfonyEnv: dev }}
            doctrineschemaupdate:
                - {priority: 4, args: { symfonyEnv: dev, force: true, complete: true, dumpSql: false }}
        atrila_dev:
            cacheclear:
                - {priority: 1, args: { symfonyEnv: dev }}
                - {priority: 2, args: { symfonyEnv: prod }}
            assetsinstall:
                - {priority: 3}
            asseticdump:
                - {priority: 4, args: { symfonyEnv: dev }}
                - {priority: 5, args: { symfonyEnv: prod }}
            doctrineschemaupdate:
                - {priority: 6, args: { symfonyEnv: dev, force: true, complete: true, dumpSql: false }}
        atrila_test:
            mysqldump:
                - {priority: 1, args: { path: ~/backup/database }}
            cacheclear:
                - {priority: 2, args: { symfonyEnv: dev }}
                - {priority: 3, args: { symfonyEnv: prod }}
            assetsinstall:
                - {priority: 4}
            asseticdump:
                - {priority: 5, args: { symfonyEnv: dev }}
                - {priority: 6, args: { symfonyEnv: prod }}
            doctrineschemaupdate:
                - {priority: 7, args: { symfonyEnv: dev, force: true, complete: true, dumpSql: false }}
        atrila_production:
            mysqldump:
                - {priority: 1, args: { path: ~/backup/database }}
            #opcachereset: # - not needed on atrila server because switch_env command on shell will also clear opcache
                #- {priority: 2, args: { host: 'integration.projectname.atri.ibrows.ch', user: ibrows, pass: 4EmbOAwVyiOSFFLI }}
            cacheclear:
                - {priority: 3, args: { symfonyEnv: dev }}
                - {priority: 4, args: { symfonyEnv: prod }}
            assetsinstall:
                - {priority: 5}
            asseticdump:
                - {priority: 6, args: { symfonyEnv: dev }}
                - {priority: 7, args: { symfonyEnv: prod }}
        atrila_*:
            writebasicauthusersfile:
                - {priority: 0}

Routing (for OpCache Reset) - not needed on atrila server because switch_env command on shell will also clear opcache

# IbrowsDeployBundle (for OpCache Reset)
ibrows_deploy:
    resource: "@IbrowsDeployBundle/Controller/"
    type:     annotation
    prefix:   /

Security (for OpCache Reset) - not needed on atrila server because switch_env command on shell will also clear opcache

security:
    access_control:
        - { path: ^/ibrows/deploy/opcache/reset, role: IS_AUTHENTICATED_ANONYMOUSLY }

parameters.yml.dist (DO NOT SET DEFAULT VALUES ON deploy_server OR deploy_environment!) If you set default server to 'localhost' and environment to 'dev' it's verly likely that a production server will get those parameters as well and start to schema update with --force --complete for example

deploy_server: ~
deploy_environment: ~
deploy_atrila_ssh_passphrase: ASK
deploy_atrila_ssh_publickeyfile: ~
deploy_atrila_ssh_privatekeyfile: ~
deploy_atrila_ssh_config: ~

composer.json

"require": {
    "ibrows/deploy-bundle": "2.*"
},
"scripts": {
    "post-install-cmd": [
        "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
        "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
        "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
        "Ibrows\\DeployBundle\\Composer\\ScriptHandler::deploy"
    ],
    "post-update-cmd": [
        "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
        "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
        "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
        "Ibrows\\DeployBundle\\Composer\\ScriptHandler::deploy"
    ]
},
"repositories": [
    {
        "type": "vcs",
        "url": "git@codebasehq.com:ibrows/ibrowsch/ibrowsdeploybundle.git"
    }
]

AppKernel

new Ibrows\DeployBundle\IbrowsDeployBundle()

统计信息

  • 总下载量: 397
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: proprietary
  • 更新时间: 2020-10-03

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固