Skip to content

MyJobGlasses/metabase-ci-tool

 
 

Repository files navigation

metabase ci tool

Git+metabase - now works with cards and dashboards (create and update)

What i can do with this tool?

  • store you cards and dashboards in git repository
  • manual deploy and configuration with desktop tool
  • automatic deploy (with you runner) from repository

An electron-vue project (+bootstrap) And node console tool for CI/CD

Build Setup

# install dependencies
npm install

# serve with hot reload at localhost:9080
npm run dev

# build electron application for production
npm run build

# run unit & end-to-end tests
npm test


# lint all JS/Vue component files in `src/`
npm run lint

using

  • metabase rest api
  • nodejs
  • electron (for desktop app)

How it works?

1. Prepare you environments

  1. Be sure dev and stage environments equal to production (you can restore backup to dev and stage from production)
  2. create new empty git repository
  3. Open "metabase-ci" (desktop app - you can build from this repository)
  4. Choose repository folder img.png
  5. Configure metabase envs in settings (enter url and credentials) img.png

Load and link ids from environments

  1. Load remote for dev and Save to folder (commit to see changes in repo)
  2. Load remote for stage and Link Ids with Dev (commit to see changes in repo)
  3. Load remote for production and Link Ids with Dev (commit to see changes in repo)

img.png

Congrats! Now you have repo with you metabase items

2. Develop some changes in dev

  1. Open you metabase site (only dev) - and change you some collection or card or dashboard
  2. Open "metabase-ci" (desktop app - you can build from this repository)
  3. Click Load remote for dev and Save to folder (commit to see changes in repo)

Now you can see you changes in repo

3. Manual publishing

stage for example

  1. Open "metabase-ci" (desktop app - you can build from this repository)
  2. Click Publish Remote for stage (commit to see changes in repo) publishing adding new ids from environment - don't forget commit them

4. Automatic publishing

console tool - using logic like manual publishing

Example Videos on Youtube

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 86.0%
  • Vue 12.9%
  • EJS 1.1%