adds yodlee2 accounts

This commit is contained in:
2022-09-30 08:34:13 -07:00
parent e754aea909
commit 8774a3951c
6 changed files with 43 additions and 5 deletions

View File

@@ -536,7 +536,8 @@
:mutations
{:request_import
{:type 'String
:args {:which {:type 'String}}
:args {:which {:type 'String}
:args {:type 'String}}
:resolve :mutation/request-import}
:delete_transaction_rule

View File

@@ -5,6 +5,9 @@
[auto-ap.jobs.core :refer [execute]]
[auto-ap.yodlee.core2 :as client2]))
(defn accounts-only []
(execute "yodlee2-accounts" client2/upsert-accounts))
(defn -main [& _]
(execute "import-yodlee" (fn []
(client2/upsert-accounts)

View File

@@ -100,6 +100,9 @@
(= job "yodlee2")
(job-yodlee2/-main)
(= job "yodlee2_accounts")
(job-yodlee2/accounts-only)
(= job "plaid")
(job-plaid/-main)

View File

@@ -85,6 +85,15 @@
:query "mutation RequestIntuitImport{request_import(which: \":plaid\")}"
:on-success [::success-plaid]}}))
(re-frame/reg-event-fx
::request-yodlee2-accounts
[with-user ]
(fn [{:keys [user]} [_ _]]
{:graphql {:token user
:owns-state {:single ::yodlee2-accounts}
:query "mutation RequestIntuitImport{request_import(which: \":yodlee2-accounts\")}"
:on-success [::success-yodlee2-accounts]}}))
(re-frame/reg-event-fx
::mounted
@@ -108,6 +117,7 @@
(let [user @(re-frame/subscribe [::subs/user])
intuit-request-import-status @(re-frame/subscribe [::status/single ::intuit])
yodlee2-request-import-status @(re-frame/subscribe [::status/single ::yodlee2])
yodlee2-accounts-request-import-status @(re-frame/subscribe [::status/single ::yodlee2-accounts])
plaid-request-import-status @(re-frame/subscribe [::status/single ::plaid])
message @(re-frame/subscribe [::msg])]
[:div
@@ -136,7 +146,13 @@
:on-click (dispatch-event [::request-plaid])
:disabled (status/disabled-for plaid-request-import-status)
:class (status/class-for plaid-request-import-status)}
"Start Plaid Import"]]]
"Start Plaid Import"]
[:button.button.is-primary-two {:aria-haspopup true
:type "button"
:on-click (dispatch-event [::request-yodlee2-accounts])
:disabled (status/disabled-for yodlee2-accounts-request-import-status)
:class (status/class-for yodlee2-accounts-request-import-status)}
"Start Yodlee Accounts"]]]
[table/table {:id :import-batches
:data-page ::page}]])]))
{:component-did-mount (dispatch-event [::mounted ])

View File

@@ -3,7 +3,8 @@ variable "task_role_arn" {}
variable "execution_role_arn" {}
variable "stage" {}
variable "job_name" {}
variable "schedule" {}
variable "schedule" { default = "rate(1 hour)" }
variable "use_schedule" { default = true }
variable "cpu" { default = 2048 }
variable "memory" { default = 8192 }
@@ -22,6 +23,7 @@ resource "aws_ecs_task_definition" "background_taskdef" {
}
resource "aws_cloudwatch_event_rule" "schedule" {
count = var.use_schedule ? 1 : 0
name = "${var.job_name}-schedule"
schedule_expression = "${var.schedule}"
}
@@ -29,9 +31,10 @@ resource "aws_cloudwatch_event_rule" "schedule" {
resource "aws_cloudwatch_event_target" "job_target" {
count = var.use_schedule ? 1 : 0
target_id = "${var.job_name}"
arn = var.ecs_cluster
rule = aws_cloudwatch_event_rule.schedule.name
rule = aws_cloudwatch_event_rule.schedule[0].name
role_arn = "arn:aws:iam::679918342773:role/service-role/Amazon_EventBridge_Invoke_ECS_1758992733"
ecs_target {

View File

@@ -406,3 +406,15 @@ module "close_auto_invoices_job" {
memory = 2048
cpu = 512
}
module "yodlee2_accounts_job" {
source = "./background-job/"
ecs_cluster = var.ecs_cluster
task_role_arn = var.task_role_arn
stage = var.stage
job_name = "yodlee2-accounts"
execution_role_arn = var.execution_role_arn
use_schedule = false
memory = 1024
cpu = 512
}