1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
Unleash is the open source feature toggle service.
Go to file
eirslett 4c9626b6a3 Remove envconsul from Dockerfile
The open source version of Unleash shouldn't depend on envconsul,
since that's an internal operations detail at FINN.no. Instead, we
accept configuration from environment variables passed through from
the "docker run" command, or via Marathon/Mesos.
2020-02-20 08:30:23 +01:00
helpers added docker container and vagrant 2020-02-20 08:30:23 +01:00
lib Added poller to keep the store in sync with server. 2020-02-20 08:30:21 +01:00
migrations #80 Add quotes to sql from feedback 2020-02-20 08:30:21 +01:00
public Added headers to all pages 2020-02-20 08:30:23 +01:00
scripts
test Check if strategy exsit before deleting it 2020-02-20 08:30:21 +01:00
.dockerignore Add files for creating docker image 2020-02-20 08:30:23 +01:00
.editorconfig Add editorconfig 2020-02-20 08:30:20 +01:00
.gitignore added docker container and vagrant 2020-02-20 08:30:23 +01:00
.jshintrc Update dependencies 2020-02-20 08:30:21 +01:00
.travis.yml Add Slack integration 2020-02-20 08:30:23 +01:00
app.js Reduce logging in production. 2020-02-20 08:30:21 +01:00
artifact.json Update files with correct indent_size 2020-02-20 08:30:21 +01:00
docker-compose.yml Make the app runnable with docker-compose 2020-02-20 08:30:23 +01:00
Dockerfile Remove envconsul from Dockerfile 2020-02-20 08:30:23 +01:00
finnbuild.json Start pushing docker images to internal docker registry 2020-02-20 08:30:23 +01:00
jest-preprocessor.js
LICENSE
package.json Make the app runnable with docker-compose 2020-02-20 08:30:23 +01:00
README.md Update README.md 2020-02-20 08:30:21 +01:00
server.js
Vagrantfile added docker container and vagrant 2020-02-20 08:30:23 +01:00
webpack.config.js Clean up entry point 2020-02-20 08:30:23 +01:00

unleash

Build Status Code Climate Coverage Status Dependency Status devDependency Status

Admin UI

Demo instance on Heroku

This repo contains the unleash-server, which contains the admin UI and a place to ask for the status of features. In order to make use of unleash you will also need a client implementation.

Known client implementations:

Development

Create a local unleash databases in postgres

$ psql postgres <<SQL
CREATE USER unleash_user WITH PASSWORD 'passord';
CREATE DATABASE unleash;
GRANT ALL PRIVILEGES ON DATABASE unleash to unleash_user;
CREATE DATABASE unleash_test;
GRANT ALL PRIVILEGES ON DATABASE unleash_test to unleash_user;
SQL

Then set env vars:

export DATABASE_URL=postgres://unleash_user:passord@localhost:5432/unleash
export TEST_DATABASE_URL=postgres://unleash_user:passord@localhost:5432/unleash_test

Commands

// Install dependencies
npm install

// Run migrations in your local DBs
./node_modules/.bin/db-migrate up
DATABASE_URL=$TEST_DATABASE_URL ./node_modules/.bin/db-migrate up

// Start server in dev-mode:
npm run dev

// Admin dashboard
http://localhost:4242

// Feature API:
http://localhost:4242/features

// Execute tests:
npm test

// Run tests with postgres running in docker:
npm run docker-test

Making a schema change

  1. Create migrations/sql/NNN-your-migration-name.up.sql with your change in SQL.
  2. Create migrations/sql/NNN-your-migration-name.down.sql with the rollback of your change in SQL.
  3. Run db-migrate create your-migration-name and edit the generated file to have this line: module.exports = require('../lib/migrationRunner').create('NNN-your-migration-name');
  4. Run db-migrate up.
  5. Generate LB artifact using scripts/generate-liquibase-artifact (TODO: make this internal)