⚡️ A dev tool for microservice developers to run local applications and/or forward others from/to Kubernetes SSH or TCP
Full Changelog: https://github.com/eko/monday/compare/v2.3.0...v2.4.0
Full Changelog: https://github.com/eko/monday/compare/v2.2.0...v2.3.0
Full Changelog: https://github.com/eko/monday/compare/v2.1.1...v2.2.0
Full Changelog: https://github.com/eko/monday/compare/v2.1.1...v2.1.2
6ea6e4b Added monitoring example with Prometheus & Grafana
This can be done by configuring your monitoring applications, here is an example with Grafana & Prometheus.
You will also have to specify the port and URL for Prometheus to scrape the metrics of your apps by adding the following YAML section to your applications:
monitoring:
port: 8001
url: /metrics
d53eeb1 Added file writer handlers: content with templating and copy
You can now specify some files to your local applications, this is great to copy
.env.dist
file to.env
for instance or to prepare some configuration using Go's templating engine from the current project YAML configuration:
<: &graphql-local
...
files: # Optional, you can also declare some files content with dynamic values coming from your project YAML or simply copy files
- type: content
to: $GOPATH/src/github.com/eko/graphql/my_file
content: |
This is my file content and here are the current project applications:
{{- range $app := .Applications }}
Name: {{ $app.Name }}
{{- end }}
- type: copy
from: $GOPATH/src/github.com/eko/graphql/.env.dist
to: $GOPATH/src/github.com/eko/graphql/.env
07d55d2 Added a way to declare global local apps & forwards
Sometimes (like for the monitoring tools) you want to run some local applications or forward everytime. To avoid re-declaring them in every project, you can now add the following global root section into your YAML configuration file:
local:
- *grafana-global
- *prometheus-global
forward:
- *graylog-forward-kubernetes
bf2ff57 Fixed README file and updated schema
⚠️ This new v2.0.0
release introduced a BC break because of the changes made in the YAML syntax.
887bdeb Rework network to allow IP generation range from 127.1.2.1 to 127.255.255.255 debc38e Added a run section and hamonize way commands are launched 76bed57 Added build option before running a local application e323bd2 Added helper and log packages
e5f8721 Rework: move setup as a real package and added global configuration 6cc6c93 README: bring configuration before usage
Here are the changes and how to upgrade:
When declaring a local application, previously you had to define:
<: &graphql-local
...
executable: go
args:
- run
- main.go
env:
HTTP_PORT: 8005
env_file: "github.com/eko/graphql/.env"
Now, this has been grouped under a run
YAML section, such as setup
and build
:
<: &graphql-local
...
run:
command: go run main.go
env:
HTTP_PORT: 8005
env_file: "github.com/eko/graphql/.env"
Also, the way commands are launched has been harmonized by switching from the executable
/ args
couple to command
.
Same for setup
section, before v2.0.0 you had to declare:
<: &graphql-local
...
setup:
- my first command
run:
command: ...
Now, this is an harmonized setup
section in which you can also declare env
or env_file
section:
<: &graphql-local
...
run:
command: ...
setup:
commands:
- my first command
env:
GIT_SSH_COMMAND: ssh -i /my/private/key.rsa
For each setup
, build
, run
and watch
sections you can now define some global environment variables settings that will be taken into account for each application you defined. Here is an example:
build:
env:
DOCKER_BUILDKIT: 1
setup:
env:
GIT_SSH_COMMAND: ssh -i /home/myuser/.ssh/id_rsa
watch:
exclude:
- .git
- node_modules
- /event/an/absolute/path
7f28a5b Added ability to search withing projects list (using /, vi-like) 1427a6f Added MONDAY_EDITOR_ARGS to specify editor arguments when editing config
132d796 Skipped proxy tests in travis-ci as we do not have access to ip config 0db8494 Rework (tests): use gomock/mockgen on local code for better assertions 905da7a Rework: removed Interface suffix from interface names 7aa226f Rework: harmonize code package names: forward, run, watch, proxy
221a403 Fixed CI/CD to do not build darwin/386 (unsupported since go1.15) 9ddafc3 Fixed panic when user interrupts during project selection 29c6688 Fixed typo in README da0f654 Fixed remote ssh forward not being applied
374fa80 Updated travis-ci.yml to test go 1.14 and go 1.15 versions 7eb9a44 Upgraded docker image to go 1.15 and alpine 3.12 56bb9d2 Upgraded ekofr/monday-proxy to alpine 3.12 1388977 Updated dependencies 44b98e8 Bump github.com/manifoldco/promptui from 0.7.0 to 0.8.0 729baab Bump github.com/stretchr/testify from 1.6.0 to 1.6.1 f4ab4cb Bump github.com/stretchr/testify from 1.5.1 to 1.6.0 25c7ea8 Bump gopkg.in/yaml.v2 from 2.2.8 to 2.3.0 a02b8ad Bump github.com/spf13/cobra from 0.0.6 to 0.0.7 d2ac78a Upgrade to go1.14 1700fae Bump github.com/stretchr/testify from 1.4.0 to 1.5.1 6faca05 Bump github.com/spf13/cobra from 0.0.5 to 0.0.6 a2f7cbf Bump gopkg.in/yaml.v2 from 2.2.7 to 2.2.8 018b346 Removed the one-liner installation as it’s not available anymore