Skip to main content

expense tracking application built on the CubicWeb framework

Project description

Expense tracking application built on the CubicWeb framework.

Developping with docker

Assuming you have a postgresql running on your machine where you can connect with peer authentication, run “make dev” it will spawn an interactive shell inside a docker container with the code mounted in develop mode. It mean you can edit the code locally and run it in the container.

Some useful commands:

  • cubicweb-ctl db-create -a fresh will create and initialize the database

  • cubicweb-ctl pyramid -D -l info fresh will start the instance on http://localhost:8080

Deploying on kubernetes

The file deployment.yaml contains several containers split in several deployments:

  • nginx to serve static files directly

  • fresh to run the application (and compile the latest translation)

  • an initContainers upgrade before fresh that upgrade the database schema if there is a new fresh version.

  • fresh-scheduler to have the scheduler running.

To create the initial database from an existing empty database:

kubectl run -it fresh-dbcreate \
   --env CW_DB_HOST=db \
   --env CW_DB_USER=user \
   --env CW_DB_PASSWORD=pass \
   --env CW_DB_NAME=fresh \
   --image=hub.extranet.logilab.fr/logilab/fresh --command -- \
   cubicweb-ctl db-create --automatic --create-db=n fresh
kubectl delete deployment fresh-dbcreate

Then generate a secret named “fresh” from where environment variables are set:

kubectl create secret generic fresh-env \
   --from-literal CW_DB_HOST=db
   --from-literal CW_DB_USER=user \
   --from-literal CW_DB_PASSWORD=pass \
   --from-literal CW_DB_NAME=fresh \
   --from-literal CW_BASE_URL=https://fresh.example.com

You need to mount a cwclientlib configuration file to make CWClientLibDataFeedParser. If you don’t use this feature, just create an empty file.

Create a file named cwclientlibrc and run:

kubectl create secret generic fresh-cwclientlibrc --from-file=./cwclientlibrc

Create a persistent volume for bfss data:

kubectl apply -f deploy/pvc.yaml

Then deploy fresh with:

kubectl apply -f deploy/deployment.yaml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cubicweb_fresh-1.7.0.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

cubicweb_fresh-1.7.0-py3-none-any.whl (13.4 kB view details)

Uploaded Python 3

File details

Details for the file cubicweb_fresh-1.7.0.tar.gz.

File metadata

  • Download URL: cubicweb_fresh-1.7.0.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for cubicweb_fresh-1.7.0.tar.gz
Algorithm Hash digest
SHA256 c6caaddac7a47be0975fdcc90354ed722f8457da5786d2348027f2dffebf79a0
MD5 ef7e4d236ba4b6d09370806dc0ff4695
BLAKE2b-256 533d56ef9f9ecf7f5f5364cb12a52fae832045869deddbddebe8dd523b86b688

See more details on using hashes here.

File details

Details for the file cubicweb_fresh-1.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for cubicweb_fresh-1.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 67f3bd2a245f132bb6a0b2a717448d4a894a16193a132d87ebef7904e849e33d
MD5 16bc605eaabfd25f676d8b16381acd30
BLAKE2b-256 1744fb8206e7f90c7257cfede69cbf240be5acf43ac4d4dd1ebb73c44a98bf06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page