Skip to content

altUSEPA/factotum-chemexpo-public

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Factotum / ChemExpo

Factotum is a web application used to curate chemical exposure data from multiple sources. Factotum is the editor for the CPDat chemical exposure database.

ChemExpo is Factotum running in read-only mode for public access.

The wiki for the Factotum repository on GitHub contains documentation of various ages and validity.

Please ALSO READ:

Architecture

Here's the architecture with components running in separate containers:

graph
User
subgraph Factotum
  fact[Factotum:main<br/>Django app.]
  cele[Factotum:celery<br/>Task runner]
  beat[Factotum:celery-beat<br/>Periodic task runner]
  ws[Factotum:service<br/>API,<br/>indexer]
  
  fact <-->|search,<br/>infreq. re-index| Elastic
  fact <-->|result cache| Redis
  Redis <-.->|msg.<br/>broker| fact
  Redis <-.->|msg.<br/>broker| cele
  Redis <-.->|msg.<br/>broker| beat
  Logstash --> Elastic
  ws --> Logstash
end
fact <-->|data edit,<br/>lookup| MySQL
fact <-->|content,<br/>static files| User
MySQL -->|query.sql| Logstash

%% tweak graph layout
User ~~~ cele
Loading

The Factotum:* components can run in separate containers, as shown above, or in a single container, see template.env.

Deployment

Runtime images:

  • factotum A django / guincorn image for the main app.
  • redis An unmodified Redis image.
  • factotum-elasticsearch A customized Elasticsearch image.
  • factotum-logstash A customized Logstash image.

Development only images:

  • factotum-mysql-base A modified MySQL 8 image.
    Used to generate the factotum-mysql-migrated and factotum-mysql-fixtured images, see integtest/build_dbs.py.
  • factotum-test An image similar to the main app image, but with Selenium support. Docker compose service is called facttest.

As there's no way to stop docker compose from starting all services, the facttest and factotum-mysql-base services exit immediately with command: date and restart: no.

Disclaimer:

The United States Environmental Protection Agency (EPA) GitHub project code is provided on an "as is" basis and the user assumes responsibility for its use. EPA has relinquished control of the information and no longer has responsibility to protect the integrity, confidentiality, or availability of the information. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by EPA. The EPA seal and logo shall not be used in any manner to imply endorsement of any commercial product or activity by EPA or the United States Government.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •