πŸ“ˆ Open Pension is a "Hasadna" project, that aimed to revealing the secrets behind the Israeli pension market.
TypeScript Python Shell HTML CSS JavaScript
Switch branches/tags
Nothing to show
Clone or download
ItamarGronich and nirgn975 Basic docker infra for dev and prod (#351)
* [WIP] Started docker for dev. Basic config & env files.

* [WIP] start utilizing common.

* Utilize .env.prod file.

* [WIP] Add docker-compose.dev.yml file.

* [WIP] finalize docker-compose.dev.yml

* initial setup with docker-compose. server is up and running. What's left is \- automatic migration

* Add volume mount for client service.

* Script to automate build process.

* Route all volumes, expose DB to localhost.

* Make the switch to small containers.
Start working with docker hub.

* Server image now being built.
Still need to run it tho

* Preventing node_modules from being sent to daemon context.

* Basic docker compose working.

* Checkout package-lock.json from master

* Checkout entrypoint from master

* Define ports and proxy from client.

* Add support for ipv6

* Setting up different envs and logging. πŸ‘πŸ»

* Add maintainer tags πŸ‘ŽπŸ»

* Wait for db to be available.

* Builder pattern.

* Copy internal folder structure.

* Create django log in travis

* Better server install script.

* Typo

* Make folder logs and then create log file.

* Woops.
Latest commit 33c8992 Jun 4, 2018

README.md

Open Pension

license Build Status Dependency Status codecov Contributors Gitter

The repo contains the server & the client parts of the Open Pension project. Open Pension is a "Hasadna" project, that aimed to revealing the secrets behind the Israeli pension market.

Our Stack

Tools we use

Pre Requirements

  1. Make sure you have Python 3.x and pip installed.
  2. NodeJS
  3. Angular CLI
  4. PostgreSQL

Installation

Client

  1. Install requirements with npm install (located under client directory).
  2. Run the server with npm start.
  3. Open the browser at http://localhost:4200.

Server

  1. cd server/config then cp local_settings.template local_settings.py and modify it by your local postgres (database) settings.
  2. Install requirements with pipenv install --dev (located under server directory, you must have pipenv installed).
  3. Migrate the data with python3 manage.py migrate.
  4. Create a superuser python3 manage.py createsuperuser and follow the instructions.
  5. Run the server with python3 manage.py runserver.
  6. Open the browser at http://localhost:8000.

Tests

Client

  • Run npm run lint to check for lint mistakes.
  • Run npm run test to execute the unit tests via Karma.
  • Run npm run e2e to execute the end-to-end tests via Protractor.

Server

  • Run pycodestyle --show-source --max-line-length=120 --exclude=pension/migrations --show-pep8 . to check for lint mistakes.
  • Run isort . --recursive --check-only to check for import mistakes.
  • Run python manage.py test to run the unit tetst.

Translation

Client

Not yet..

Server

To make new strings for translation use the command

python manage.py makemessages -l he
python manage.py compilemessages -l he

Data

If you need the data itself use the --recursive flag when you git clone this repo.

Old Database

To import the old database, first download it and then put it in server/data directory, open the pension_data_all.csv.gz file (extract the pension_data_all.csv from it). Then run python3 manage.py import_old_db.

This script will search for pension_data_all.csv file in the server/data directory and import the csv file to our current database.

Dummy Blog Posts

To create dummy blog posts just run python3 manage.py create_blog_dummy_data.

Logging

Logging is done using sentry.io.

To see the log ask the team leader an access to the openPension email account.

Deployment

Not yet..

Contribute

Just fork and do a pull request (;