Skip to content

Latest commit

 

History

History
78 lines (46 loc) · 2.25 KB

README.md

File metadata and controls

78 lines (46 loc) · 2.25 KB

lupadoku

Document search application. Accesses Lupapiste MongoDB directly and Onkalo search API through HTTP.

Configuration

lupadoku-config.edn has defaults for local development. You can overwrite necessary values by creating lupadoku-config-local.edn which is included in .gitignore.

MongoDB connection

Lupadoku does searches directly into the Lupapiste main database. It only needs read-only permissions. Configure the database connection string under the :db key. You can include ssl=true to use SSL/TLS encryption with the connection, e.g.:

:db {:uri "mongodb://lupapiste_ro:<password>@server.example.tld:port/lupapiste?ssl=true"}

Onkalo API

Configure Onkalo API URL and credentials under :http :arkisto, e.g.:

:http {:arkisto {:host    "https://www.lupapiste.fi/onkalo"
                 :app-id  "app-id"
                 :app-key "app-key"}}

Builds and deployment

Builds are done by ci.lupapiste.fi. Deployment is done with Ansible, code and configuration are in lupapiste-ansible project. Deployment to dev, test, qa and production environments is handled by ci.lupapiste.fi

Production deployment occurs when a build from master branch is promoted in Jenkins UI.

Development

Start a repl:

lein repl

and run the application:

(go)

Reload all changed (back-end) namespaces:

(reset)

Front-end development

Develop front-end with shadow-cljs:

lein front

Note that npm dependencies required by the shared code in document-search-commons must be declared in lupadoku project's package.json as that project only includes CLJS libraries loaded via Leiningen.

You should symlink document-search-commons under checkouts for front-end development, as shadow-cljs expects to access sources from there as well. Styles are also located under document-search-commons. Run sass in document-search-commons for continuous css build when altering styles:

npm run sass:watch

To extract strings for translation, create a symlink to translations.txt under document-search-commons

ln -s ../document-search-commons/resources/translations.txt resources/translations.txt

and then run

lein extract-strings

License

Copyright © 2024 Cloudpermit Oy

Distributed under the European Union Public Licence (EUPL) version 1.2.