aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
* deploy: try to restart the app when the CLI asks to do itPaul Bonaud2020-08-065-3/+65
| | | | | | | | | | | | | | | In some cases (rollback or deployment errored on clever side), clever-tools will fail when calling `clever deploy` because it thinks the currently being deployed commit is already deployed. However in some cases the git pushed commit is not the currently running commit. Leading to a failure in our deployment process. The proposed solution from the clever tools error is to launch `clever restart`. Until we wait for https://github.com/CleverCloud/clever-tools/issues/422 to be fixed, let's do what the error message say: try to restart in case of a deployment failure.
* Merge pull request #74 from clementd-fretlink/service-dependenciesv2.7Clément Delafargue2020-07-0310-18/+88
|\ | | | | Service dependencies
| * Remove compatibility code for now-unsupported clever-tools versionsClement Delafargue2020-07-021-16/+1
| |
| * Fix `clever_addons` exampleClement Delafargue2020-07-021-1/+1
| |
| * Add support for linking service dependenciesClement Delafargue2020-07-026-0/+68
| |
| * Add dhall definitions for linked service dependenciesClement Delafargue2020-07-023-1/+18
|/
* Merge pull request #72 from clementd-fretlink/noop-if-up-to-dateClément Delafargue2020-06-309-12/+68
|\ | | | | don't run `clever deploy` if the app is up-to-date
| * fix(tests): use `! grep` instead of `grep -v`Clement Delafargue2020-06-303-7/+7
| | | | | | | | | | | | `grep -v` makes sure a file contains other lines than the one that matched. This is different from `! grep` which makes sure the file does not contain a line that matched.
| * fix(test): log all commads to `$binary-commands`Clement Delafargue2020-06-301-1/+2
| | | | | | | | | | Previously, only the commands not directly handled by the stub were logged. We want to log all commands instead
| * add a test for `noop-if-up-to-date`Clement Delafargue2020-06-302-0/+36
| | | | | | | | | | It makes sure `clever deploy` is _not_ called if the application is up-to-date on clever cloud
| * Make commit ids overridable in the script mockClement Delafargue2020-06-301-3/+6
| |
| * Don't run `clever deploy` if the app is up-to-dateClement Delafargue2020-06-303-1/+17
|/ | | | | | | | | | | Running `git push` when the remote is up-to-date no-ops (it does not trigger a deployment, but it does not fail either). Running `clever deploy` when the remote is up-to-date triggers a failure. Here, we care about the _end result_ (ie the app is deployed on the correct commit), so no-oping is more appropriate. This behaviour is not baked in `clever-tools`, but I think it should. I opened an issue. This script is a temporary workaround. (at least I hope it's temporary) https://github.com/CleverCloud/clever-tools/issues/422
* Merge pull request #73 from paulrbr-fl/fix-timeout-on-deploypaulrbr-fl2020-06-302-2/+7
|\ | | | | fix: prevent crash when the deployment times out
| * ci: trying to fix nix-channel by removing unstable channelPaul Bonaud2020-06-301-1/+6
| | | | | | | | | | | | NIX_PATH used to be enough to select the channel to use, but as Travis add the nixpkgs-unstable channel we can get unexpected results when nix decides to push a new unstable version out there in the public.
| * fix: prevent crash when the deployment times outPaul Bonaud2020-06-291-1/+1
|/
* Merge pull request #71 from paulrbr-fl/clever-restartv2.6paulrbr-fl2020-06-231-0/+2
|\ | | | | dhall: add missing configuration for clever_restart_only variable
| * dhall: add missing configuration for clever_restart_only variablePaul Bonaud2020-06-231-0/+2
|/ | | | This change was forgotten in #70
* Merge pull request #70 from paulrbr-fl/clever-restartpaulrbr-fl2020-06-239-5/+136
|\ | | | | feature: add a new 'clever_restart_only' flag to restart an app
| * tests: expectations on binary stubPaul Bonaud2020-06-234-0/+85
| |
| * tests: Add tests for the new 'restart' featurePaul Bonaud2020-06-233-4/+18
| |
| * feature: add a new 'clever_restart_only' flag to restart an appPaul Bonaud2020-06-233-1/+33
|/ | | | | This new flag will perform a restart on the target clever cloud application instead of deploying it.
* Merge pull request #69 from paulrbr-fl/documentationpaulrbr-fl2020-06-224-50/+43
|\ | | | | core: README cleanup and test env cleanup
| * core: define nix env for travis with a unique default.nix filePaul Bonaud2020-06-223-26/+14
| |
| * core: cleanup the README to better document the rolePaul Bonaud2020-06-221-24/+29
|/ | | | Part of #66
* Merge pull request #67 from clementd-fretlink/scalingClément Delafargue2020-06-227-1/+111
|\ | | | | scalability configuration
| * add tests for scalability settingsClement Delafargue2020-06-222-0/+38
| | | | | | | | They make sure that ansible does not crash while calling `clever scale`
| * Add support for scalability configurationClement Delafargue2020-06-225-1/+73
|/ | | | Closes #52
* Merge pull request #68 from paulrbr-fl/bug-fixpaulrbr-fl2020-06-198-14/+53
|\ | | | | fix: make sure not to include unecessary ENV variable
| * fix: make sure not to include unecessary ENV variablePaul Bonaud2020-06-192-2/+0
| | | | | | | | | | | | | | This is a fix to an unfortunate bug introduced by #64 because we had a default value set to `None` on the `clever_haskell_entry_point`. Ansible considers `None` as a defined value so the `is defined` condition doesn't match our need
| * core: fix execution mode on shell scriptPaul Bonaud2020-06-191-0/+0
| |
| * tests: Add more test casesPaul Bonaud2020-06-195-12/+53
|/
* Merge pull request #55 from clementd-fretlink/build-flavorClément Delafargue2020-06-193-1/+13
|\ | | | | Add optional build flavor configuration
| * Update default `clever-tools` version in the readmeClément Delafargue2020-06-191-1/+1
| | | | | | Co-authored-by: paulrbr-fl <43074087+paulrbr-fl@users.noreply.github.com>
| * Specify clever-tools version constaints in READMEClement Delafargue2020-06-191-0/+1
| |
| * Inline `clever scale --build-flavor` commandClement Delafargue2020-06-193-12/+1
| |
| * Add optional build flavor configurationClement Delafargue2020-06-195-0/+22
|/
* Merge pull request #64 from clementd-fretlink/json-envClément Delafargue2020-06-195-10/+23
|\ | | | | Use JSON import for environment variables
| * Extract environment building tasks from the JSON templateClement Delafargue2020-06-193-8/+12
| |
| * Use JSON import for environment variablesClement Delafargue2020-06-193-7/+16
|/ | | | | | | | The env can be provided as a JSON list `[{"name": "PORT", "value": "8080"}]`. The `dict2items` filter provided by ansible is _almost_ what we want, but it keeps the value original types (a boolean is kept as a boolean in the JSON value). Since environment variables are strings and `clever-tools` does not want to make the implicit coercion for us, we need to do it ourselves.
* Merge pull request #63 from paulrbr-fl/upgrade-clever-cliv2.5paulrbr-fl2020-06-176-155/+56
|\ | | | | deploy: remove custom polling script now that the CLI does it for us
| * deploy: remove custom polling script now that the CLI does it for usPaul Bonaud2020-06-176-155/+56
|/ | | | | See recent changes (https://github.com/CleverCloud/clever-tools/pull/415) introduced in 2.5.0+ version of the clever cli tools
* Merge pull request #61 from paulrbr-fl/fix-env-filev2.4paulrbr-fl2020-03-251-2/+2
|\ | | | | fix: there was a bug in the generate env file
| * fix: there was a bug in the generate env filePaul Bonaud2020-03-241-2/+2
|/ | | | | Bug Introduced by #57 because the `to_json` filter quotes the given value if it's a string, so the PR was "double quoting" each values.
* Merge pull request #60 from paulrbr-fl/fix-base-envv2.3paulrbr-fl2020-03-247-8/+35
|\ | | | | fix `clever_base_env` by removing a variable if not necessary
| * vars: fix `clever_base_env` by removing a variable if not necessaryPaul Bonaud2020-03-247-8/+35
|/ | | | | | The `CC_RUN_COMMAND` variable was defined in case we use haskell binary as entrypoints. However if the `clever_haskell_entry_point` variable is not defined we shouldn't define the `CC_RUN_COMMAND` env variable.
* Merge pull request #59 from paulrbr-fl/add-dhall-types-addonsv2.2paulrbr-fl2020-03-231-2/+10
|\ | | | | config(dhall): adding redis and mysql addon types
| * config(dhall): adding redis and mysql addon typesPaul Bonaud2020-03-231-2/+10
|/
* Merge pull request #57 from clementd-fretlink/quoted-env-varsClément Delafargue2019-11-271-1/+1
|\ | | | | Quote env vars to support multiline values
| * Quote env vars to support multiline valuesClement Delafargue2019-11-271-1/+1
|/ | | | | | | | | clever-tools now supports multiline env vars. It did so by supporting quotes in the formats it reads from. This commit quotes the exported values using the `tojson` filter. Of course, a better solution would be for clever env to directly read json value, but it's not there yet
* Merge pull request #58 from paulrbr-fl/fix-cipaulrbr-fl2019-11-261-3/+5
|\ | | | | ci: fix nix version and nix channel version