mirror of
https://github.com/penpot/penpot.git
synced 2025-06-10 15:31:38 +02:00
🔥 Remove already broken v2 migration script
This commit is contained in:
parent
bfe9a2b545
commit
349552879e
2 changed files with 0 additions and 109 deletions
|
@ -25,7 +25,6 @@
|
||||||
[app.loggers.webhooks :as-alias webhooks]
|
[app.loggers.webhooks :as-alias webhooks]
|
||||||
[app.metrics :as-alias mtx]
|
[app.metrics :as-alias mtx]
|
||||||
[app.metrics.definition :as-alias mdef]
|
[app.metrics.definition :as-alias mdef]
|
||||||
[app.migrations.v2 :as migrations.v2]
|
|
||||||
[app.msgbus :as-alias mbus]
|
[app.msgbus :as-alias mbus]
|
||||||
[app.redis :as-alias rds]
|
[app.redis :as-alias rds]
|
||||||
[app.rpc :as-alias rpc]
|
[app.rpc :as-alias rpc]
|
||||||
|
@ -609,11 +608,6 @@
|
||||||
(nrepl/start-server :bind "0.0.0.0" :port 6064 :handler cider-nrepl-handler))
|
(nrepl/start-server :bind "0.0.0.0" :port 6064 :handler cider-nrepl-handler))
|
||||||
|
|
||||||
(start)
|
(start)
|
||||||
|
|
||||||
(when (contains? cf/flags :v2-migration)
|
|
||||||
(px/sleep 5000)
|
|
||||||
(migrations.v2/migrate app.main/system))
|
|
||||||
|
|
||||||
(deref p))
|
(deref p))
|
||||||
(catch Throwable cause
|
(catch Throwable cause
|
||||||
(ex/print-throwable cause)
|
(ex/print-throwable cause)
|
||||||
|
|
|
@ -1,103 +0,0 @@
|
||||||
;; This Source Code Form is subject to the terms of the Mozilla Public
|
|
||||||
;; License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
||||||
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
||||||
;;
|
|
||||||
;; Copyright (c) KALEIDOS INC
|
|
||||||
|
|
||||||
(ns app.migrations.v2
|
|
||||||
(:require
|
|
||||||
[app.common.exceptions :as ex]
|
|
||||||
[app.common.logging :as l]
|
|
||||||
[app.db :as db]
|
|
||||||
[app.features.components-v2 :as feat]
|
|
||||||
[app.setup :as setup]
|
|
||||||
[app.util.time :as dt]))
|
|
||||||
|
|
||||||
(def ^:private sql:get-teams
|
|
||||||
"SELECT id, features,
|
|
||||||
row_number() OVER (ORDER BY created_at DESC) AS rown
|
|
||||||
FROM team
|
|
||||||
WHERE deleted_at IS NULL
|
|
||||||
AND (not (features @> '{components/v2}') OR features IS NULL)
|
|
||||||
ORDER BY created_at DESC")
|
|
||||||
|
|
||||||
(defn- get-teams
|
|
||||||
[conn]
|
|
||||||
(->> (db/cursor conn [sql:get-teams] {:chunk-size 1})
|
|
||||||
(map feat/decode-row)))
|
|
||||||
|
|
||||||
(defn- migrate-teams
|
|
||||||
[{:keys [::db/conn] :as system}]
|
|
||||||
;; Allow long running transaction for this connection
|
|
||||||
(db/exec-one! conn ["SET LOCAL idle_in_transaction_session_timeout = 0"])
|
|
||||||
|
|
||||||
;; Do not allow other migration running in the same time
|
|
||||||
(db/xact-lock! conn 0)
|
|
||||||
|
|
||||||
;; Run teams migration
|
|
||||||
(run! (fn [{:keys [id rown]}]
|
|
||||||
(try
|
|
||||||
(-> (assoc system ::db/rollback false)
|
|
||||||
(feat/migrate-team! id
|
|
||||||
:rown rown
|
|
||||||
:label "v2-migration"
|
|
||||||
:validate? false
|
|
||||||
:skip-on-graphics-error? true))
|
|
||||||
(catch Throwable _
|
|
||||||
(swap! feat/*stats* update :errors (fnil inc 0))
|
|
||||||
(l/wrn :hint "error on migrating team (skiping)"))))
|
|
||||||
(get-teams conn))
|
|
||||||
|
|
||||||
(setup/set-prop! system :v2-migrated true))
|
|
||||||
|
|
||||||
(defn migrate
|
|
||||||
[system]
|
|
||||||
(let [tpoint (dt/tpoint)
|
|
||||||
stats (atom {})
|
|
||||||
migrated? (setup/get-prop system :v2-migrated false)]
|
|
||||||
|
|
||||||
(when-not migrated?
|
|
||||||
(l/inf :hint "v2 migration started")
|
|
||||||
(try
|
|
||||||
(binding [feat/*stats* stats]
|
|
||||||
(db/tx-run! system migrate-teams))
|
|
||||||
|
|
||||||
(let [stats (deref stats)
|
|
||||||
elapsed (dt/format-duration (tpoint))]
|
|
||||||
(l/inf :hint "v2 migration finished"
|
|
||||||
:files (:processed-files stats)
|
|
||||||
:teams (:processed-teams stats)
|
|
||||||
:errors (:errors stats)
|
|
||||||
:elapsed elapsed))
|
|
||||||
|
|
||||||
(catch Throwable cause
|
|
||||||
(l/err :hint "error on aplying v2 migration" :cause cause))))))
|
|
||||||
|
|
||||||
(def ^:private required-services
|
|
||||||
[[:app.main/assets :app.storage.s3/backend]
|
|
||||||
[:app.main/assets :app.storage.fs/backend]
|
|
||||||
:app.storage/storage
|
|
||||||
:app.db/pool
|
|
||||||
:app.setup/props
|
|
||||||
:app.svgo/optimizer
|
|
||||||
:app.metrics/metrics
|
|
||||||
:app.migrations/migrations
|
|
||||||
:app.http.client/client])
|
|
||||||
|
|
||||||
(defn -main
|
|
||||||
[& _args]
|
|
||||||
(try
|
|
||||||
(let [config-var (requiring-resolve 'app.main/system-config)
|
|
||||||
start-var (requiring-resolve 'app.main/start-custom)
|
|
||||||
stop-var (requiring-resolve 'app.main/stop)
|
|
||||||
system-var (requiring-resolve 'app.main/system)
|
|
||||||
config (select-keys @config-var required-services)]
|
|
||||||
|
|
||||||
(start-var config)
|
|
||||||
(migrate @system-var)
|
|
||||||
(stop-var)
|
|
||||||
(System/exit 0))
|
|
||||||
(catch Throwable cause
|
|
||||||
(ex/print-throwable cause)
|
|
||||||
(flush)
|
|
||||||
(System/exit -1))))
|
|
Loading…
Add table
Add a link
Reference in a new issue