git.iko.soy/typeable/octopod
on master help sign in
Merge pull request #61 from Aviora/fix-create-command

Fix 'create', 'edit', 'update', 'delete' commands

commita950a37f79f301007e14526de66e6861e1ef834a authorandor0 <aaorlov1@gmail.com> dateMon 6 Jul 2020, 18:50 (6 years ago) parent8a3f75f06ac562
1 file changed+14−8
dm-backend/src/DMS.hs+14−8
dm-backend/src/DMS.hs+14−8
@@ -190,9 +190,9 @@ createH dep = do
190190 createDep p Deployment { name = n, tag = t, envs = e } =
191191 withResource p $ \conn -> execute
192192 conn
193− "INSERT INTO deployments (name, tag, envs) VALUES (?, ?, ?)"
193+ "INSERT INTO deployments (name, tag, envs, status) VALUES (?, ?, ?, ?)"
194194 -- FIXME: make EnvPairs a newtype and give it ToField instance
195− (n, t, formatEnvPairs e)
195+ (n, t, formatEnvPairs e, show CreatePending)
196196 failIfImageNotFound $ tag dep
197197 res :: Either SqlError Int64 <- liftIO . try $ createDep pgPool dep
198198 case res of
@@ -329,9 +329,11 @@ editH dName dEnvs = do
329329 updateEditDeployment :: PgPool -> IO Int64
330330 updateEditDeployment p = withResource p $ \conn -> execute
331331 conn
332− "UPDATE deployments SET envs = ?, updated_at = now() WHERE name = ?"
332+ "UPDATE deployments \
333+ \SET envs = ?, updated_at = now(), status = ?, status_updated_at = now() \
334+ \WHERE name = ?"
333335 -- FIXME: make EnvPairs a newtype and give it ToField instance
334− (formatEnvPairs dEnvs, dName)
336+ (formatEnvPairs dEnvs, show UpdatePending, dName)
335337
336338deleteH :: DeploymentName -> AppM CommandResponse
337339deleteH dName = do
@@ -365,9 +367,10 @@ archiveDeployment p dName = withResource p $ \conn -> do
365367 let
366368 q =
367369 "UPDATE deployments \
368− \SET archived = 't', archived_at = now() \
370+ \SET archived = 't', archived_at = now(), \
371+ \status = ?, status_updated_at = now() \
369372 \WHERE name = ?"
370− execute conn q (Only dName)
373+ execute conn q (show DeletePending, dName)
371374
372375updateH :: DeploymentName -> DeploymentUpdate -> AppM CommandResponse
373376updateH dName DeploymentUpdate { newTag = dTag, newEnvs = nEnvs } = do
@@ -425,8 +428,11 @@ updateDeployment
425428updateDeployment p dName dTag dEnvs =
426429 withResource p $ \conn -> execute
427430 conn
428− "UPDATE deployments SET tag = ?, envs = ?, updated_at = now() WHERE name = ?"
429− (dTag, formatEnvPairs dEnvs, dName)
431+ "UPDATE deployments \
432+ \SET tag = ?, envs = ?, updated_at = now(), \
433+ \status = ?, status_updated_at = now() \
434+ \WHERE name = ?"
435+ (dTag, formatEnvPairs dEnvs, show UpdatePending, dName)
430436
431437infoH :: DeploymentName -> AppM [DeploymentInfo]
432438infoH dName = do