{ "info": { "author": "andrea giacobino", "author_email": "no.andrea@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7" ], "description": "# Welance Starter (ATM: CraftCMS 3.x + Docker)\n\nThe project is the base to fork to create new projects using craft cms.\nThe repository contains:\n\n- docker configuration for craft container\n- docker-compose configuration to run the craft+mysql enviroment\n- base schema customization of the craft installation\n- apache configuration\n- base template for craft frontend\n- utility scripts to start/stop the enviroment\n- utility scripts to import/export craft schema changes\n\nMore info about this project: **[here](build/README.md)**.\n\n# Installation \n\nTo install waldcli run `pip install waldcli`\n\nFor preview releases run `pip install --extra-index-url https://test.pypi.org/simple/ waldcli`\n\n## Workflow\n\nThe following is the standard workflow to use with the projects using craft/docker for development.\n\n### 0. Setup\n\n\u26a0\ufe0f **note:** Execute point nr. 4, only if the setup has not yet been done\n1. Fork the starter project\ncreate a fork of the latest release of the base repo : [https://github.com/welance/welance-craft-starter](https://github.com/welance/welance-craft-starter)\n2. Install python/libs and bash completion (make sure to have python3 installed, use [virtualenv](https://virtualenv.pypa.io/en/stable/) if necessary).\n3. run:\n - `pip install -r bin/requirements.txt` to install the required libraries and\n - `source bin/butler.bash-completion` to enable commands autocompletion\n4. Run `bin/butler.py setup` script. (required: [docker](https://www.docker.com/community-edition)). The script will ask for:\n\n> **!!! ATTENTION !!!**\n> customer and project number are used to setup the containers environment,\n> they cannot be easily changed once the project is on-going.\n\n5. Commit\ncommit the chagnes to the repository, in particular the changes reated to:\n\n```\n./bin/.butler.json\n./docker/docker-compose.yml\n./docker/docker-compose-staging.yml\n```\n\n### 1. Development\n\nDuring the development here are the most used commands:\n\n1. **Start!** Start The docker dev environment\n`bin/butler.py start --port [PORT_NUMBER]` script starts the docker containers\n\n2. **Work!** The development phase of the project will involve 3 main resources:\n- the `templates`folder\n- the `config/project.yaml`\n- the `plugins` folder\n\n3. **Stop!** Stop the docker dev environment\n`bin/butler.py stop` stops the docker conatiners. It doesn't delete the database or cms data.\n\n#### **Import/Export (Project/DB) Schema**\nThe schema is imported/exported automatically by Craft v3+ into `config/project.yml`, so just make sure tommit it\n\n\n#### Local **Plugin Development**:\nIf you would like to develop a local plugin, we need to put it inside the plugins folder such as `/plugins/VENDOR_NAME/PLUGIN_NAME`\n\n\n##### Import/Export database seed\nTo import/export the dump of the database that it is used to setup/seed the database\n\n- `bin/butler.py seed-import -f=path/to/file`\n- `bin/butler.py seed-export -f=path/to/file`\n\nthe seed sql file is imported/exported from `build/dump/base.sql`\n\n**TODO: change this!**\n\n### Accessing the database\nSince the database use in the containers is not accessible from outside docker a database web interface is provided to dump/load/edit the database directly. The interface of the database is [Adminer](https://www.adminer.org/) and\nis available via http or https.\n\nThe urls are:\n- [http://HOST/db](http://localhost/db)\n- [https://HOST/db](https://localhost/db).\n\nThe parameters to log in are:\n- System: MySQL or PostgreSQL depending on the driver selected\n- Server: database\n- Username: craft\n- Password: craft\n- Database: craft\n\n### Apache configuration and .htaccess\nThe website apache configuration is stored in `./docker/craft/conf/apache2/conf.d/welance.conf`.\nThe welance.conf contains all the settings for the installation to work and should be taken as a reference\nfor production installation. By default .htaccess is _DISABLED_, [because](https://nystudio107.com/blog/stop-using-htaccess-files-no-really).\nChanges to the apache configuration require to restart the environment (`bin/butler.py local-stop`, `bin/butler.py local-start`) to be enabled.\n\n\n### Applying Craftcms updates\n_TODO_\n\n\n### Troubleshooting\n\n**Docker**: the project folder must be located in one of the **Docker File Sharing** paths.\nYou can add a folder (for example the mamp one) by edit the prefernces of your docker installation\n\n**CraftCMS**: if you log in using HTTPS login with HTTP fails. This has someting to do with sessions\nand CSRF protection. To solve the issue clear the browser application data and retry.\n\n**Adminer**: if you log in using HTTPS login with HTTP fails. This has someting to do with sessions\nand CSRF protection. To solve the issue clear the browser application data and retry.\n\n### SSL\n\nthe certificate shipped with the project has been created using:\n\n```\nlocalhost:/# openssl req -x509 -nodes -days 1825 -newkey rsa:2048 -keyout welance.ssl.key -out welance.ssl.crt\nGenerating a 2048 bit RSA private key\n....................+++\n....................................................................+++\nwriting new private key to 'welance.ssl.key'\n-----\nYou are about to be asked to enter information that will be incorporated\ninto your certificate request.\nWhat you are about to enter is what is called a Distinguished Name or a DN.\nThere are quite a few fields but you can leave some blank\nFor some fields there will be a default value,\nIf you enter '.', the field will be left blank.\n-----\nCountry Name (2 letter code) []:DE\nState or Province Name (full name) []:Berlin\nLocality Name (eg, city) []:Berlin\nOrganization Name (eg, company) []:Welance\nOrganizational Unit Name (eg, section) []:\nCommon Name (eg, fully qualified host name) []:\nEmail Address []:info@welance.de\n```\n\n\n### 2. Deploy on Staging\n\nFor staging environment are available the commands:\n- `bin/butler.py open-staging`\n\nthey are used by the [welance clerk](https://github.com/welance/docker-staging) system\n\n\n### 3. Create a Release Package\nTo create an tar.gz archive of the craft installation use the command\n\n- `bin/butler.py release-package`\n\nit will create a file `release.tar.gz` file in the root of the project containing\nthe craft installation with a **fresh database dump** in the `build/dump/base.sql` location\n\n### Project removal\nOnce the project is finished to remove the resources associated with the project (containers and data)\nthe `bin/butler.py teardown`script is provided.\n\n## License\n\nhttps://commonsclause.com/", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/welance/internal/waldcli", "keywords": "", "license": "MIT", "maintainer": "andrea giacobino", "maintainer_email": "no.andrea@gmail.com", "name": "waldcli", "package_url": "https://pypi.org/project/waldcli/", "platform": "", "project_url": "https://pypi.org/project/waldcli/", "project_urls": { "Homepage": "https://gitlab.com/welance/internal/waldcli" }, "release_url": "https://pypi.org/project/waldcli/0.2.3/", "requires_dist": [ "requests (>=2,<3)", "PyYAML (==3.13)", "colorama (>=0.4.1,<0.5.0)" ], "requires_python": ">=3.7,<4.0", "summary": "The waldemar client for web projects (using docker)", "version": "0.2.3" }, "last_serial": 5500691, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "4f4f69e02f15aee9a44b2c8c41f47b88", "sha256": "f243e507333b4b54ba7a55cf62485f3cd2cfb52d78c9a5b678973e2818914e98" }, "downloads": -1, "filename": "waldcli-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "4f4f69e02f15aee9a44b2c8c41f47b88", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 17823, "upload_time": "2019-05-11T23:58:31", "url": "https://files.pythonhosted.org/packages/af/d2/9d8b66454e224decb0c6bed2909cacd298b0051469dd77ae9e73b7659adc/waldcli-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dc88d020394bfb9386c26ecfac1a7700", "sha256": "915012b5411d43036a56af023b00b70b04f79ecf30e66b0c0727eaac5cbd99fc" }, "downloads": -1, "filename": "waldcli-0.2.0.tar.gz", "has_sig": false, "md5_digest": "dc88d020394bfb9386c26ecfac1a7700", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 20237, "upload_time": "2019-05-11T23:58:34", "url": "https://files.pythonhosted.org/packages/8a/bd/7e72634d0ae21811d25c0a10b6ef300a02585ab79d71145804c7bb19fb97/waldcli-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2f6ae5e0c1a7d27a29617ee6549572e1", "sha256": "c3306fce01737fc3a728dd993ef2b9b331d051a5357ecef219f47c2ef42e20f4" }, "downloads": -1, "filename": "waldcli-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2f6ae5e0c1a7d27a29617ee6549572e1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 16313, "upload_time": "2019-05-23T22:27:51", "url": "https://files.pythonhosted.org/packages/8b/e7/d6459c45c5c6320a887478b22f4664b1f90fc53c0fd335fbdb5c2575ae78/waldcli-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e942b33b4fcef15703ccc7f872aaf593", "sha256": "79af9bae5e75308ff5be351f2d71f6241427685b010b802c5e95a16557f3de7b" }, "downloads": -1, "filename": "waldcli-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e942b33b4fcef15703ccc7f872aaf593", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 18523, "upload_time": "2019-05-23T22:27:53", "url": "https://files.pythonhosted.org/packages/62/4e/6a5d0efdfec27b1a172755b2ef3334bebe291c22e40037bedaa0ccd7a0c3/waldcli-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "2f26a2ecbb1a557057718ebe6c8894a9", "sha256": "f58827cf6d0a951d9df805376f58e5738b6e62a5dcaa6eb0ebd0c24c4a59495b" }, "downloads": -1, "filename": "waldcli-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2f26a2ecbb1a557057718ebe6c8894a9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 16310, "upload_time": "2019-07-05T13:25:13", "url": "https://files.pythonhosted.org/packages/b6/82/c591bfaae1eaa00b7ffe348f30267c65500fb8883ed3508a6267315a07be/waldcli-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ca485fc85a85fee935c308ae24c2143e", "sha256": "fce98d70ea77a37db1d6cb9eab9cdb67c45849684e7c1a6ba27ea9b6ebb2a890" }, "downloads": -1, "filename": "waldcli-0.2.2.tar.gz", "has_sig": false, "md5_digest": "ca485fc85a85fee935c308ae24c2143e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 18525, "upload_time": "2019-07-05T13:25:14", "url": "https://files.pythonhosted.org/packages/c9/af/8bf7a5db9e0ac02f63872f7bd55f4c9dc9bd2e50af725bb29ebf55e5907d/waldcli-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "1be4e35d8eabd5986bbb4a693dd9a869", "sha256": "f845f7c977e69c88e57f4923a98edea0f652b61f02813e458178689b3a0adde6" }, "downloads": -1, "filename": "waldcli-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1be4e35d8eabd5986bbb4a693dd9a869", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 16309, "upload_time": "2019-07-05T14:29:45", "url": "https://files.pythonhosted.org/packages/24/75/f3a33ad4c0b680a70049fce077884e3a674ed79aafb87c8b90efab410cf4/waldcli-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2390c5c4ae5bab8e07d61651a039c675", "sha256": "09236ba1f48df39c14600243eae0f6dfd064b71df64602dd2d91dd6de30c8e22" }, "downloads": -1, "filename": "waldcli-0.2.3.tar.gz", "has_sig": false, "md5_digest": "2390c5c4ae5bab8e07d61651a039c675", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 18518, "upload_time": "2019-07-05T14:29:47", "url": "https://files.pythonhosted.org/packages/ba/1b/4a802fbb5563fb2c6ad11f307717cba2d987c48e1b8365e7757aa5b944b8/waldcli-0.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1be4e35d8eabd5986bbb4a693dd9a869", "sha256": "f845f7c977e69c88e57f4923a98edea0f652b61f02813e458178689b3a0adde6" }, "downloads": -1, "filename": "waldcli-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1be4e35d8eabd5986bbb4a693dd9a869", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 16309, "upload_time": "2019-07-05T14:29:45", "url": "https://files.pythonhosted.org/packages/24/75/f3a33ad4c0b680a70049fce077884e3a674ed79aafb87c8b90efab410cf4/waldcli-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2390c5c4ae5bab8e07d61651a039c675", "sha256": "09236ba1f48df39c14600243eae0f6dfd064b71df64602dd2d91dd6de30c8e22" }, "downloads": -1, "filename": "waldcli-0.2.3.tar.gz", "has_sig": false, "md5_digest": "2390c5c4ae5bab8e07d61651a039c675", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 18518, "upload_time": "2019-07-05T14:29:47", "url": "https://files.pythonhosted.org/packages/ba/1b/4a802fbb5563fb2c6ad11f307717cba2d987c48e1b8365e7757aa5b944b8/waldcli-0.2.3.tar.gz" } ] }