{"id":15946106,"url":"https://github.com/eces/chai-latte","last_synced_at":"2025-10-30T08:22:33.482Z","repository":{"id":8394045,"uuid":"9971948","full_name":"eces/chai-latte","owner":"eces","description":"A tool for parallel deployment with Play Framework 2. It allows developers publish to dedicate server in a blink.","archived":false,"fork":false,"pushed_at":"2013-06-08T12:52:11.000Z","size":155,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-09T10:27:50.932Z","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/eces.png","metadata":{"files":{"readme":"README.md","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":"2013-05-10T01:18:19.000Z","updated_at":"2013-10-18T12:29:08.000Z","dependencies_parsed_at":"2022-07-31T01:17:58.988Z","dependency_job_id":null,"html_url":"https://github.com/eces/chai-latte","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eces%2Fchai-latte","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eces%2Fchai-latte/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eces%2Fchai-latte/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eces%2Fchai-latte/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eces","download_url":"https://codeload.github.com/eces/chai-latte/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247087772,"owners_count":20881456,"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","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-10-07T09:20:21.815Z","updated_at":"2025-10-30T08:22:28.462Z","avatar_url":"https://github.com/eces.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chai Latte\n### A tool for parallel deployment with Play Framework 2\nIt allows developers publish to dedicate server in a blink.\n\n\n## Naming\nChai-tea Latte is one of the most favorite hot beverage of @eces. An english word (formerly from Persian/Hindustani language) 'chai' pronounces like the word 'difference' in Korean. Chai Latte means that differences of local and server are softly going together like soft steamed milk.\n\n@eces가 제일 좋아하는 Chai-tea Latte로 이름을 정했습니다. \"서버와 로컬의 Chai(차이)를 Latte(라떼)처럼 합치자\"라는 뜻을 가지고 있습니다.\n\n## Requirements\n- Play Framework 2.x\n- Server can use SSH\n- Proxy enabled web server with port-based load balancer (an example of Apache is below)\n\n## Getting Started\n\n0. Download [Zip File](https://github.com/eces/chai-latte/archive/master.zip) and unzip into the working directory (where `README`, `app`, `conf`, `public` are located).\n\n0. Configure `deploy.conf` file. *SERVER_HOST*, *SERVER_USER* and *BASE_DIR* are must be set.\n    ```python\n    #!/bin/bash\n\n    # deploy.conf\n    #\n    # Author: Jinhyuk Lee \u003ceces at mstock.org\u003e\n    # Organization: MINTPRESSO \u003csupport at mintpresso.com\u003e\n    # Repository: https://github.com/eces/chai-latte\n    #\n    # Description: This is a configuration file for the command 'deploy' of executable script file.\n    #\n\n    ORGANIZATION_NAME='MINTPRESSO'\n    USER_NAME='Jinhyuk Lee'\n\n    SERVER_NAME='trinity.so (IDC)'\n    SERVER_HOST='trinity.so'\n    SERVER_USER='trinity'\n\n    # without slash '/' at the end\n    BASE_DIR='/home/trinity/playframework'\n    PLAY_OPTIONS='-Dconfig.file=../production.conf'\n    ```\n\n0. (Optional) You may need to type `../path/to/chai-latte/deploy` all the time, so let's go easy! Create symbolic link with `ln -s` or just add one line `alias deploy=\"~/chai-latte/deploy\"` in your shell configuration file (For bash shell, edit `~/.profile` and reload `. ~/.profile` ) so now you can use `deploy` everywhere.\n\n0. Prepare the compiled `target` source by typing `play clean compile stage` in your working directory.\n\n0. Run `deploy` in command line and you will see \n    ```bash\n    $ deploy\n    usage: deploy [port_number]\n    ```\n\n0. See what's going on. All output from remote server displays in yellow.\n    ```bash\n    $ deploy 10000\n\n    [ MINTPRESSO ]\n\n    Auto Deployment to trinity.so (IDC) will be processed in /Users/eces/soran-ui\n\n    [1/5] clean-compile-staged /Users/eces/soran-ui/target is okay? [y/n]: \n    y\n    [2/5] Port 10000 is okay? [y/n]: \n    y\n    [3/5] Waiting for upload ... \n\n    trinity@trinity.so's password: \n    ```\n\n0. (Optional) For your information, you don't need to enter the password in every deployment process. Using some sugar `ssh-keygen` and `ssh-copy-id` you can just skip it. **If your deployment is for prototyping**, it's very nice and highly recommended.\n\n    \u003e Check this out: [3 Steps to perform SSH login without password using ssh-key and ssh-copy-id](http://www.thegeekstuff.com/2008/11/3-steps-to-perform-ssh-login-without-password-using-ssh-keygen-ssh-copy-id)\n\n    This is an **5 seconds deployment** example if you've followed the guide above.\n    ```bash\n    $ deploy 15000\n\n    [ MINTPRESSO ]\n\n    Auto Deployment to trinity.so (IDC) will be processed in /Users/eces/panel\n\n    [1/5] clean-compile-staged /Users/eces/panel/target is okay? [y/n]: \n    y\n    [2/5] Port 15000 is okay? [y/n]: \n    y\n    [3/5] Waiting for upload ... \n\n     Uploaded in 4s\n    [4/5] Waiting for restart ... \n\n    ...\n    # remote console displays in here with yellow color\n    ...\n\n     Executed in 1s\n     Total 5s\n\n    [5/5] DONE!\n    ```\n\n    Please don't do this.\n    ```bash\n    $ yes | deploy 15000\n    ```\n\n## Setting up web server\n\n### Basic Concept\n\n\u003eTODO\n\n### Apache Web Server\n\n\u003eTODO\n\n# Further information\n\nPlease email to [support@mintpresso.com](mailto:support@mintpresso.com) or create issue on [Github Issues](https://github.com/eces/chai-latte/issues).\n\nThis is a by-product of [MINTPRESSO](http://mintpresso.com).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feces%2Fchai-latte","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feces%2Fchai-latte","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feces%2Fchai-latte/lists"}