Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

*single* edeliver command to build and "hot upgrade" a Elixir/Phoenix App? #54

Closed
2 tasks done
nelsonic opened this issue Jul 28, 2017 · 1 comment
Closed
2 tasks done
Labels
enhancement New feature or enhancement of existing functionality help wanted If you can help make progress with this issue, please comment! T4h Time Estimate 4 Hours technical A technical issue that requires understanding of the code, infrastructure or dependencies

Comments

@nelsonic
Copy link
Member

nelsonic commented Jul 28, 2017

#as part of using Travis to Continuously Deploy our Elixir Apps using Travis-CI
we are on a quest to find a single command that we can run when a build passes

mix edeliver build upgrade --auto-version=git-revision --from=$(git rev-parse HEAD~) --verbose 
mix edeliver deploy upgrade to production --version=$(git rev-parse HEAD~) --verbose

image

relates to / depends on: #53
... we want to curl app.net/_version instead of reading it from
required by: dwyl/learn-travis#22

Todo

  • keep investigating until we find the magic command to "hot upgrade" an Elixir app! 🔍
  • Use latest available version of the app when deploying

I've read through all the docs https://github.com/edeliver/edeliver
& wiki https://github.com/edeliver/edeliver/wiki without any luck.
This looks like a good place to continue the quest:
http://www.east5th.co/blog/2017/01/23/upgrade-releases-with-edeliver/

Right now the process requires human intervention to manually type/input the version:
image

Also, it doesn't help that my internet connection keeps timing out because people are clearly using it for (non-work related) streaming ...!
image

@nelsonic nelsonic added enhancement New feature or enhancement of existing functionality help wanted If you can help make progress with this issue, please comment! T4h Time Estimate 4 Hours technical A technical issue that requires understanding of the code, infrastructure or dependencies labels Jul 28, 2017
@nelsonic nelsonic changed the title Is there a *single* edeliver command to build and "hot upgrade" a Elixir/Phoenix App? *single* edeliver command to build and "hot upgrade" a Elixir/Phoenix App? Jul 28, 2017
@nelsonic
Copy link
Member Author

Use the git revision that is currently in "production": curl http://213.168.248.157/_version

mix edeliver build upgrade --auto-version=git-revision --from=$(curl http://213.168.248.157/_version) --verbose 

image

However when I attempt to upload the release to the server using the command:

mix edeliver deploy upgrade to production

I get the following error:
image

A remote command failed on:

  ubuntu@213.168.248.157

Output of the command is shown above if the --verbose option
was used and the commands executed on that remote host are
printed below for debugging purposes:

FAILED with exit status 3:

ssh -o ConnectTimeout=3 ubuntu@213.168.248.157 
    [ -f ~/.profile ] && source ~/.profile
    set -e
    cd /home/ubuntu/hello_world_edeliver &> /dev/null
    bin/hello_world_edeliver upgrade 0.0.3+f012e96 &> /dev/null
   &> /dev/null

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or enhancement of existing functionality help wanted If you can help make progress with this issue, please comment! T4h Time Estimate 4 Hours technical A technical issue that requires understanding of the code, infrastructure or dependencies
Projects
None yet
Development

No branches or pull requests

1 participant