From 6f02a95a4aa76576678f4d739b0da9c3ef4d3af2 Mon Sep 17 00:00:00 2001 From: Brendan McDevitt Date: Mon, 18 Apr 2022 17:27:31 -0500 Subject: [PATCH] begin with workers. first add a cna worker --- app/workers/cna_importer_worker.rb | 10 ++++++++++ crontab.yaml | 13 ++++--------- docker-compose.yml | 17 +++++++++++++++-- 3 files changed, 29 insertions(+), 11 deletions(-) create mode 100644 app/workers/cna_importer_worker.rb diff --git a/app/workers/cna_importer_worker.rb b/app/workers/cna_importer_worker.rb new file mode 100644 index 0000000..c32b3ab --- /dev/null +++ b/app/workers/cna_importer_worker.rb @@ -0,0 +1,10 @@ +require '/data_importer/lib/importers/cna_importer.rb' + +class CnaImporterWorker + include Faktory::Job + + def perform(*args) + puts "Hello, I am #{jid} with args #{args}" + CnaImporter.new.import + end +end \ No newline at end of file diff --git a/crontab.yaml b/crontab.yaml index 59697aa..068669e 100644 --- a/crontab.yaml +++ b/crontab.yaml @@ -1,14 +1,9 @@ faktory: tcp://faktory:7419 jobs: - - job: test - schedule: "@every 30s" - args: - - test - - job: test - schedule: 5 * * * * - args: - - 1 - - 2 + - job: CnaImporterWorker + args: + - true + schedule: "@daily" retries: 1 queue: default priority: 5 diff --git a/docker-compose.yml b/docker-compose.yml index da35999..2c72c01 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -6,7 +6,7 @@ services: - ./tmp/db:/var/lib/postgresql/data environment: POSTGRES_PASSWORD: password - web: + web: &web_base build: . env_file: - credentials.env @@ -15,6 +15,9 @@ services: - .:/data_importer ports: - "3000:3000" + environment: + FAKTORY_URL: 'tcp://faktory:7419' + FAKTORY_PROVIDER: FAKTORY_URL depends_on: - db faktory: @@ -24,10 +27,20 @@ services: - "7420:7420" volumes: - ./tmp/faktory:/var/lib/faktory + depends_on: + - db + faktory-worker: + <<: *web_base + command: bundle exec faktory-worker + ports: [] + depends_on: + - web faktory-cron: image: cdrx/faktory-cron command: "./faktory-cron -config /crontab.yaml" environment: FAKTORY_URL: 'tcp://faktory:7419' volumes: - - ./crontab.yaml:/crontab.yaml \ No newline at end of file + - ./crontab.yaml:/crontab.yaml + depends_on: + - faktory \ No newline at end of file