{"id":20766778,"url":"https://github.com/chapter-three/creo-server","last_synced_at":"2026-04-24T10:03:08.554Z","repository":{"id":2376456,"uuid":"3341405","full_name":"chapter-three/creo-server","owner":"chapter-three","description":"A barebones Drupal 6/7 development server management script using Apache, MySQL, PHP, Solr, Drush, and Gitolite.","archived":false,"fork":false,"pushed_at":"2013-02-05T01:35:29.000Z","size":254,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":39,"default_branch":"master","last_synced_at":"2025-12-25T22:31:04.167Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chapter-three.png","metadata":{"files":{"readme":"README.mkd","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-02-03T03:40:48.000Z","updated_at":"2013-03-14T19:26:27.000Z","dependencies_parsed_at":"2022-07-26T10:48:43.784Z","dependency_job_id":null,"html_url":"https://github.com/chapter-three/creo-server","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chapter-three/creo-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapter-three%2Fcreo-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapter-three%2Fcreo-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapter-three%2Fcreo-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapter-three%2Fcreo-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chapter-three","download_url":"https://codeload.github.com/chapter-three/creo-server/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapter-three%2Fcreo-server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32218290,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T09:47:08.147Z","status":"ssl_error","status_checked_at":"2026-04-24T09:46:41.165Z","response_time":64,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-11-17T11:26:08.598Z","updated_at":"2026-04-24T10:03:08.520Z","avatar_url":"https://github.com/chapter-three.png","language":"Shell","readme":"Creo Project - Server\n=====================\n\nA barebones Drupal 6/7 development server management script using Apache, MySQL, PHP, Solr, Drush, and Gitolite.\n\nDescription\n-----------\nThis script simplifies the process of adding a project to your development server. For a new or imported project:\nIt creates a Gitolite-controlled repo, imports the code, adds an Apache configuration, creates a MySQL database, and creates \na Solr instance. Given a site archive, you can generally have a site imported and running within a minute.\n\nFor non-admin users: The script automates the process of creating a server-side project sandbox. Multiple devs can work\non their own clone of the code while sharing (or not sharing) the database or site files. Pushing to the primary repo\nupdates the main dev site automatically. Developers are free to simply clone the repo and work on their local machines also.\n\nExample Usage\n-------------\nCreate a project from an existing project:\n\n`sudo creo create PROJECT -t OLD_PROJECT`\n\nImport an existing project repo (make the code into a repo, and don't add Drupal files directory):\n\n`sudo creo import PROJECT -i /root/PROJECT-REPO`\n\n`sudo tar zxf PROJECT-FILES.tar.gz -C /var/www/projects/PROJECT/sites/default/`\n\n`sudo chown git:git -R /var/www/projects/PROJECT/sites/default/`\n\n`mysql PROJECT \u003c PROJECT.sql`\n\nMake a code sandbox (using primary database, and a symbolic link to files) at /home/user/public_html \navailable at http://project.user.dev.example.com:\n\n`creo sandbox PROJECT`\n\nRequired Software\n-----------------\n1. Apache 2.x (Tested with 2.2.16)\n2. MySQL 5.x (Tested with 5.1.49-3)\n3. PHP 5.x (Tested with 5.3.3-7)\n4. Drush 4.x (Tested with 4.5)\n5. Tomcat 6.x (Tested with 6.0.35-1)\n6. Solr 1.4.x or 3.5.x (Tested with 1.4.1)\n8. Gitolite 2.x (Tested with 2/8/12 clone)\n\nNotes\n-----\nCreo is an updated and re-organized version of the original C3 dev project management script. The script works well\nfor many use cases, but a lot of work is needed. Ideally it would be rewritten in PHP/Ruby/Python and use\nChef/Ansible/etc for the initial configuration. But you know... time.\n\nThere are many security considerations with using this. This is NOT for client production hosting, this is\nfor development only. Only employees and contractors should have SSH access to a server running this script. \nFew users should have sudo for adding/importing projects, most users will simply make \"sandboxes.\"\n\nRequires significant server configuration. Review INSTALL.mkd for setup from a bare Ubuntu install.\n\nThis script was designed/tested on Debian 6 Squeeze and Ubuntu 10.04/12.04. It may be updated in the future to \nwork with RHEL and CentOS.\n\nThis works well with Pantheon, but currently requires an additional symbolic link to work with Acquia due to\nthe docroot in the repo.\n\nInstallation\n------------\n0. Follow server setup details in INSTALL.mkd\n1. Download or clone the creo-server project into /usr/local/creo-server\n  * `git clone git@github.com:chapter-three/creo-server.git /usr/local/`\n2. Create a symbolic link from /usr/bin/creo to /usr/local/creo-server.\n  * `ln -s /usr/local/creo-server/creo /usr/bin/creo`\n3. Copy creo.conf.sample to creo.conf and adjust the values to match your server\n4. Install Apache, MySQL, PHP and Tomcat6 using the package manager, apt-get or aptitude.\n5. Download and install Drush in a globally accessible location. (Installation via Pear is best)\n6. Download and setup Solr for multi-instance (not multi-core.) Debian/Ubuntu instructions:\n  * Goto http://www.apache.org/dyn/closer.cgi and find an Apache Solr mirror.\n  * `wget http://$MIRROR/apache/lucene/solr/3.6.1/apache-solr-3.6.1.tgz` (commands may differ for different versions)\n  * `tar zxf apache-solr-3.6.1.tgz`\n  * `/etc/init.d/tomcat6 stop`\n  * `cp apache-solr-3.6.1/dist/apache-solr-3.6.1.war /var/lib/tomcat6/webapps/solr.war`\n  * `/etc/init.d/tomcat6 start` (This creates the /var/lib/tomcat6/webapps/solr directory)\n  * `/etc/init.d/tomcat6 stop`\n  * `cp -aR /var/lib/tomcat6/webapps/solr /var/lib/tomcat6/webapps/TEMPLATE`\n  * `mkdir -p /var/solr/TEMPLATE`\n  * `cp -aR apache-solr-3.6.1/example/solr/* /var/solr/TEMPLATE`\n  * `pico /etc/tomcat6/Catalina/localhost/TEMPLATE.xml` (use vim/vi if you want!)\n  * Paste in the following and save (Save CTRL-X then enter):\n\n    \\\u003cContext docBase=\"/var/lib/tomcat6/webapps/solr.war\" debug=\"0\" crossContext=\"true\" \\\u003e\n      \\\u003cEnvironment name=\"solr/home\" type=\"java.lang.String\" value=\"/var/solr/TEMPLATE\" override=\"true\" /\\\u003e\n    \\\u003c/Context\\\u003e\n\n  * Change the Tomcat server port from the default 8080 to 8983(or any other port of your choice)\n    `pico /etc/tomcat6/server.xml` and change:\n\n    \\\u003cConnector port=\"8080\" protocol=\"HTTP/1.1\"\n               connectionTimeout=\"20000\"\n               URIEncoding=\"UTF-8\"\n               redirectPort=\"8443\" /\\\u003e\n\n     To:\n\n    \\\u003cConnector port=\"8983\" protocol=\"HTTP/1.1\"\n               connectionTimeout=\"20000\"\n               URIEncoding=\"UTF-8\"\n               redirectPort=\"8443\" /\\\u003e\n\n  * Download the Apachesolr (or Search API Solr search) from Drupal.org:\n    `wget http://ftp.drupal.org/files/projects/apachesolr-7.x-1.x-dev.tar.gz`\n  * `tar zxf apachesolr-7.x-1.x-dev.tar.gz`\n  * Replace the Solr XML config files:\n    `cp apachesolr/solr-conf/protwords.txt /var/solr/TEMPLATE/conf/protwords.txt`\n    `cp apachesolr/solr-conf/schema-solr3x.xml /var/solr/TEMPLATE/conf/schema.xml`\n    `cp apachesolr/solr-conf/solrconfig-solr3x.xml /var/solr/TEMPLATE/conf/solrconfig.xml`\n  * `/etc/init.d/tomcat6 start`\n7. Create Apache, and Solr template files\n  * Todo\n8. Go!\n\nTodo\n----\n* Use 'dialog' to create interactive mode\n* Rollback changes on error\n* Metadata storage in MySQL or flat file.\n* Additional security for databases, and PHP.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchapter-three%2Fcreo-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchapter-three%2Fcreo-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchapter-three%2Fcreo-server/lists"}