{"id":21958977,"url":"https://github.com/techpivot/phalcon-ci-installer","last_synced_at":"2025-10-15T06:52:04.391Z","repository":{"id":57066196,"uuid":"44353975","full_name":"techpivot/phalcon-ci-installer","owner":"techpivot","description":"Composer integration for PHP applications to install the Phalcon framework as an extension in the PHP runtime for various hosted CI services including TravisCI, CircleCI, ScrutinizerCI, Shippable and Codeship.","archived":false,"fork":false,"pushed_at":"2020-08-12T23:17:46.000Z","size":49,"stargazers_count":26,"open_issues_count":2,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-09-07T11:59:31.938Z","etag":null,"topics":["ci","circleci","codeship","phalcon","php","scrutinizer","shippable","travisci"],"latest_commit_sha":null,"homepage":"https://www.techpivot.net","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/techpivot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-10-16T00:57:24.000Z","updated_at":"2021-06-17T09:43:58.000Z","dependencies_parsed_at":"2022-08-24T10:10:45.667Z","dependency_job_id":null,"html_url":"https://github.com/techpivot/phalcon-ci-installer","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/techpivot/phalcon-ci-installer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techpivot%2Fphalcon-ci-installer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techpivot%2Fphalcon-ci-installer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techpivot%2Fphalcon-ci-installer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techpivot%2Fphalcon-ci-installer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/techpivot","download_url":"https://codeload.github.com/techpivot/phalcon-ci-installer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techpivot%2Fphalcon-ci-installer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279058696,"owners_count":26094844,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-15T02:00:07.814Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci","circleci","codeship","phalcon","php","scrutinizer","shippable","travisci"],"created_at":"2024-11-29T09:18:29.515Z","updated_at":"2025-10-15T06:52:04.349Z","avatar_url":"https://github.com/techpivot.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Phalcon CI Installer\n\n[![CircleCI](https://img.shields.io/circleci/token/e0f3c984c936d88ad20ca9db4112f032d27930af/project/techpivot/phalcon-ci-installer/master.svg?label=circleci\u0026style=flat-square)](https://circleci.com/gh/techpivot/phalcon-ci-installer)\n[![Travis CI](https://img.shields.io/travis/techpivot/phalcon-ci-installer/master.svg?label=travisci\u0026style=flat-square)](https://travis-ci.org/techpivot/phalcon-ci-installer)\n[![Scrutinizer](https://img.shields.io/scrutinizer/build/g/filp/whoops.svg?label=scrutinizer\u0026style=flat-square)](https://scrutinizer-ci.com/g/techpivot/phalcon-ci-installer/)\n[![Codeship](https://img.shields.io/codeship/546abfd0-3037-0134-bd3d-7603af744759/master.svg?label=codeship\u0026style=flat-square)](https://codeship.com/projects/109153)\n[![Shippable](https://img.shields.io/shippable/56204d941895ca44741e1583/master.svg?label=shippable\u0026style=flat-square)](https://app.shippable.com/projects/56204d941895ca44741e1583)\n\n[![Latest Version](https://img.shields.io/packagist/v/techpivot/phalcon-ci-installer.svg?style=flat-square)](https://packagist.org/packages/techpivot/phalcon-ci-installer)\n[![Total Downloads](https://img.shields.io/packagist/dt/techpivot/phalcon-ci-installer.svg?style=flat-square)](https://packagist.org/packages/techpivot/phalcon-ci-installer)\n[![Software License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](https://raw.githubusercontent.com/techpivot/phalcon-ci-installer/master/LICENSE)\n\n\nComposer integration for PHP applications to install the [Phalcon](https://phalconphp.com) framework as an extension in the PHP runtime for various hosted CI services including CircleCI, Travis CI, Scrutinizer, Codeship, and Shippable.\n\n\n## Features\n* Phalcon extension loaded in PHP runtime\n* Native cache support to prevent rebuilding Phalcon from source\n* Auto-detection of latest tagged Phalcon version\n* Install specific Phalcon versions, tags and releases _(Since 1.0.2)_\n* Supports PHP7 and Phalcon 3.0.x _(Since 1.0.4)_\n\n\n## Version Compatibility\n\nThe following table outlines general compability of Phalcon inside various CI environments. \n\n| PHP CI Version | Phalcon Version(s) | CI Environment |\n|:---------------|:-------------------|:---------------|\n| 5.3            | ✖   (Not supported)            | - |\n| 5.4            | ✖   (Not supported)            | - |\n| 5.5            | ✔   `master`, `2.0.x`, `3.0.x` | ✔ CircleCI, Travis CI, Scrutinizer, Codeship, Shippable |\n| 5.6            | ✔   `master`, `2.0.x`, `3.0.x` | ✔ CircleCI, Travis CI, Scrutinizer, Codeship, Shippable |\n| 7.0            | ✔   `3.0.x`                    | ✔ CircleCI, Travis CI, Scrutinizer, Codeship, Shippable |\n\n\n## Installation\n\n1. Add the `techpivot/phalcon-ci-installer` repository into the **require-dev** section of your `composer.json` as follows:\n\n  ```json\n    \"require-dev\": {\n        \"techpivot/phalcon-ci-installer\": \"~1.0\"\n    }\n  ```\n1. Update your CI script to execute the **vendor/bin/install-phalcon.sh** installer in the \nrelevant section. See the examples below for various CI providers.\n\n\n## Options\n\nThe installer takes one optional argument that can be used to specify a specific branch or tag.\n\nExamples:\n\n```bash\n# Install latest version from default branch\nvendor/bin/install-phalcon.sh\n\n# Install latest revision from branch \"3.0.x\"\nvendor/bin/install-phalcon.sh 3.0.x\n\n# Install specific release tag \"phalcon-v2.0.9\"\nvendor/bin/install-phalcon.sh phalcon-v2.0.9\n```\n\n\u003e **Note:** The Phalcon CI installer is designed to cache the resulting binaries that correspond to the Phalcon/PHP version. \nSpecifing a release or tagged version will result in the best performance as subsequent builds (depending on CI \ncontainer/settings)  will be cached. Building from a branch (including the default master option) will result in a \nPhalcon rebuild every time the installer detects a new version that is not yet cached.\n\n\n## CI Environments\n\n\n### CircleCI\n\n**`circle.yml`**\n```yml\nmachine:\n  php:\n    version: 5.6.14\n\ndependencies:\n  cache_directories:\n    - vendor\n    - ~/cphalcon\n\n  post:\n    - vendor/bin/install-phalcon.sh phalcon-v2.0.13\n\ntest:\n  override:\n    - vendor/bin/phpunit\n```\n\n\u003e **Note:** In order to cache data for faster builds, ensure the `cache_directories` directives are specified as outlined above.\n\n\u003c!-- --\u003e\n\u003e **Note:** Ensure that the `vendor/bin/circleci-install-phalcon.sh` is executed in the **post** phase, which will allow for the inclusion of the `techpivot/phalcon-ci-installer` repository during the composer installation at inference or override phase.\n\n\u003c!-- --\u003e\n\u003e **Reference:** CircleCI PHP Versions – [Ubuntu 14.04](https://circleci.com/docs/build-image-trusty/#php) • [Ubuntu 12.04](https://circleci.com/docs/build-image-precise/#php)\n\n\n### Travis CI\n\n**`.travis.yml`**\n```yml\nlanguage: php\n\nphp:\n  - 5.5\n  - 5.6\n  - 7.0\n\ncache:\n  directories:\n    - vendor\n    - ~/.composer/cache\n    - ~/cphalcon\n\nbefore_install:\n  - composer install --prefer-source --no-interaction\n  - vendor/bin/install-phalcon.sh 3.0.x\n\nscript:\n  - vendor/bin/phpunit\n\nnotifications:\n  email: false\n```\n\n\u003e **Note:** Multiple PHP versions can be specified and each one will be cached independently; however, the phalcon target ref (branch or tag) will be applied for all builds\n\n\u003c!-- --\u003e\n\u003e **Reference:** [TravisCI PHP Versions](https://docs.travis-ci.com/user/languages/php#Choosing-PHP-versions-to-test-against)\n\n\n### Scrutinizer\n\n**`.scrutinizer.yml`**\n```yml\nbuild:\n    environment:\n        php:\n            version: 7.0.8\n\n    cache:\n        directories:\n            - ~/cphalcon\n\n    dependencies:\n        override:\n            - composer install --prefer-source --no-interaction\n        after: \n            - vendor/bin/install-phalcon.sh 3.0.x\n```\n\n\u003e **Note:** No need to include the `vendor/` cache directory as this is cached automatically.\n\n\u003c!-- --\u003e\n\u003e **Reference:** [ScrutinizerCI PHP Versions](https://scrutinizer-ci.com/docs/configuration/build#php)\n\n\n### Codeship\nSample **Setup Commands**\n\n```bash\nphpenv local 5.6\nphp --version\ncomposer install --prefer-source --no-interaction\nvendor/bin/install-phalcon.sh\n```\n\n\u003e **Reference:** [Codeship CI PHP Versions](https://codeship.com/documentation/languages/php/#versions)\n\n\n### Shippable\n\n**`shippable.yml`**\n```yml\nlanguage: php\nphp:\n  - 7.0\n\nbuild:\n  cache: true\n    \n  cache_dir_list:\n    - $SHIPPABLE_BUILD_DIR/vendor\n    - ~/cphalcon\n\n  ci:\n    - composer install --prefer-source --no-interaction\n    - bin/install-phalcon.sh 3.0.x\n```\n\n\u003c!-- --\u003e\n\u003e **Reference:** [Shippable PHP Versions](http://docs.shippable.com/ci_languages/#php)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechpivot%2Fphalcon-ci-installer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechpivot%2Fphalcon-ci-installer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechpivot%2Fphalcon-ci-installer/lists"}