kopia lustrzana https://github.com/piku/piku
Merge branch 'master' of github.com:piku/piku
commit
0c20f62929
|
@ -8,7 +8,7 @@
|
|||
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
|
||||
### Documentation: [Install](#install) | [Using](#using-piku) | [Procfile](https://piku.github.io/configuration/procfile.html) | [ENV](https://piku.github.io/configuration/env.html) | [Examples](https://piku.github.io/community/examples.html) | [Roadmap](https://github.com/orgs/piku/projects/2) | [Contributing](https://piku.github.io/community/contributing.html) | [LinuxConf Talk](https://www.youtube.com/watch?v=ec-GoDukHWk) | [Fast Web App Tutorial](https://github.com/piku/webapp-tutorial) | [Discussion Forum](https://github.com/piku/piku/discussions)
|
||||
### Documentation: [Install](#install) | [Using](#workflow) | [Procfile](https://piku.github.io/configuration/procfile.html) | [ENV](https://piku.github.io/configuration/env.html) | [Examples](https://piku.github.io/community/examples.html) | [Roadmap](https://github.com/orgs/piku/projects/2) | [Contributing](https://piku.github.io/community/contributing.html) | [LinuxConf Talk](https://www.youtube.com/watch?v=ec-GoDukHWk) | [Fast Web App Tutorial](https://github.com/piku/webapp-tutorial) | [Discussion Forum](https://github.com/piku/piku/discussions)
|
||||
|
||||
## [Install](https://piku.github.io/install)
|
||||
|
||||
|
@ -32,7 +32,7 @@ We wanted an Heroku/CloudFoundry-like way to deploy stuff on a few `ARM` boards,
|
|||
|
||||
`piku` is currently able to deploy, manage and independently scale multiple applications per host on both ARM and Intel architectures, and works on any cloud provider (as well as bare metal) that can run Python, `nginx` and `uwsgi`.
|
||||
|
||||
## Using `piku`
|
||||
## Workflow
|
||||
|
||||
`piku` supports a Heroku-like workflow:
|
||||
|
||||
|
@ -97,4 +97,4 @@ But as a general rule, if it can be invoked from a shell, it can be run inside `
|
|||
|
||||
[raspi-cluster]: https://github.com/rcarmo/raspi-cluster
|
||||
[cygwin]: http://www.cygwin.com
|
||||
[wsl]: https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux
|
||||
[wsl]: https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
# Piku Examples
|
||||
|
||||
The following table lists the available examples, including some third-party applications you can deploy with `piku`:
|
||||
|
||||
| Stack | Simple | Framework | Utility | Third-Party |
|
||||
|-----------|:------:|:---------:|:-------:|:-----------:|
|
||||
| C | [Baremetal C](https://github.com/piku/sample-bare-metal-c) |
|
||||
| Clojure | [Sample app](https://github.com/piku/sample-clojure-app) |
|
||||
| ClojureScript | | | [Piku Monitoring](https://github.com/piku/piku-monitoring) |
|
||||
| Elixir | | [Phoenix App](https://github.com/piku/sample-phoenix-app) |
|
||||
| Go | [Sample app](./golang) | | | [Gitea (Static Binary)](https://github.com/piku/deploy-gitea) |
|
||||
| Java | [Sample app](https://github.com/piku/sample-java-app) |
|
||||
| NodeJS | [Sample app](https://github.com/piku/sample-nodejs-app) | [Express with Wisp](./nodejs-wisp) | | [Node-RED](https://github.com/piku/deploy-nodered),<br/>[BitTorrent Tracker](https://github.com/piku/deploy-bittorrent-tracker) |
|
||||
| Python | [Background workers](https://github.com/piku/sample-python-app),<br/>[Postgres database](./python-postgres) | [Django app](https://github.com/piku/sample-django-app),<br/>[Flask Web app Tutorial](https://github.com/piku/webapp-tutorial) | [WebDAV Server](https://github.com/piku/deploy-webdav) |
|
||||
| Ruby | [Sample app](https://github.com/piku/sample-ruby-app) | [Rails app](https://github.com/piku/sample-rails-app) |
|
||||
| SPA | | | | [Snapdrop](https://github.com/piku/deploy-snapdrop) |
|
||||
Besides the examples in this folder, there is also [a set of community-supplied example applications](https://piku.github.io/community/examples.html)
|
||||
|
|
5
piku
5
piku
|
@ -52,6 +52,8 @@ else
|
|||
ssh -o LogLevel=QUIET ${sshflags} "$server" "$@" | grep -v "INTERNAL"
|
||||
echo " shell Local command to start an SSH session in the remote."
|
||||
echo " init Local command to download an example ENV and Procfile."
|
||||
echo " download Local command to scp down a remote file. args: REMOTE-FILE(s) LOCAL-PATH"
|
||||
echo " Remote file path is relative to the app folder."
|
||||
;;
|
||||
apps|setup|setup:ssh|update)
|
||||
ssh ${sshflags} "$server" "$@"
|
||||
|
@ -59,6 +61,9 @@ else
|
|||
shell)
|
||||
ssh -t "$server" run "$app" bash
|
||||
;;
|
||||
download)
|
||||
scp "$server:~/.piku/apps/${app}/${2}" ${3:-'.'}
|
||||
;;
|
||||
*)
|
||||
shift # remove cmd arg
|
||||
ssh ${sshflags} "$server" "$cmd" "$app" "$@"
|
||||
|
|
7
piku.py
7
piku.py
|
@ -1649,6 +1649,13 @@ def cmd_git_upload_pack(app):
|
|||
call('git-shell -c "{}" '.format(argv[1] + " '{}'".format(app)), cwd=GIT_ROOT, shell=True)
|
||||
|
||||
|
||||
@piku.command("scp", context_settings=dict(ignore_unknown_options=True, allow_extra_args=True))
|
||||
@pass_context
|
||||
def cmd_scp(ctx):
|
||||
"""Simple wrapper to allow scp to work."""
|
||||
call(" ".join(["scp"] + ctx.args), cwd=GIT_ROOT, shell=True)
|
||||
|
||||
|
||||
def _get_plugin_commands(path):
|
||||
sys_path.append(abspath(path))
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue