Skip to content

Commit 8af0103

Browse files
committed
Generator/admin-panel: generate versions pushed without flags
1 parent a66f73a commit 8af0103

File tree

7 files changed

+32
-11
lines changed

7 files changed

+32
-11
lines changed

src-cljc/playground/utils/utils.cljc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
(ns playground.utils.utils
22
(:require [clojure.string :as string]
3+
[version-clj.core :as version-clj]
34
#?(:cljs
45
[cljs-time.coerce :as c]
56
:clj
@@ -32,6 +33,11 @@
3233
(filter released-or-8-version? versions))
3334

3435

36+
(defn sort-versions [versions]
37+
(sort (comp - #(version-clj/version-compare %1 %2))
38+
versions))
39+
40+
3541
(defn replace-urls [version-name scripts]
3642
(map (fn [script]
3743
(if (= script "../anychart-bundle.min.js")

src/playground/db/request.clj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,9 @@
127127
:result-set-fn first
128128
:row-fn underscore->dash}))
129129

130+
(def repo-update-actual-versions! (sql {:name sql-repo-update-actual-versions!}))
131+
132+
130133
;; =====================================================================================================================
131134
;; Versions
132135
;; =====================================================================================================================

src/playground/generator/core.clj

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -264,15 +264,18 @@
264264
update-branches))
265265

266266

267-
(defn need-update-branch [branch]
268-
(or (utils/released-version? (:name branch))
267+
(defn need-update-branch [branch repo gen-params]
268+
(or (and (= (:name @repo) (:repo gen-params))
269+
(= (:name branch) (:version gen-params)))
270+
(utils/released-version? (:name branch))
269271
(= (:name branch) "develop")
270272
(= (:name branch) "master")
271273
(string/includes? (:message branch) "#pg")
272274
(string/includes? (:message branch) "#all")))
273275

274276

275-
(defn names [branches] (map :name branches))
277+
(defn names [branches]
278+
(doall (map :name branches)))
276279

277280

278281
(defn update-repository [generator db repo gen-params]
@@ -288,14 +291,16 @@
288291
branch-list)
289292
db-branches (db-req/versions db {:repo-id (:id @repo)})
290293
changed-branches (changed-branches actual-branches db-branches)
291-
updated-branches (filter need-update-branch changed-branches)
294+
updated-branches (filter #(need-update-branch % repo gen-params) changed-branches)
292295
removed-branches (branches-for-remove actual-branches db-branches)]
293296
(info "Branch list: " (pr-str (names branch-list)))
294297
(info "Actual branches: " (pr-str (names actual-branches)))
295298
(info "DB branches: " (pr-str (names db-branches)))
296299
(info "Changed branches: " (pr-str (names changed-branches)))
297300
(info "Updated branches: " (pr-str (names updated-branches)))
298301
(info "Removed branches: " (pr-str (names removed-branches)))
302+
(db-req/repo-update-actual-versions! db {:id (:id @repo)
303+
:versions (utils/sort-versions (names actual-branches))})
299304
(notifier/start-build (:notifier generator)
300305
(:name @repo)
301306
(names changed-branches)

src/playground/web/handlers/admin_handlers.clj

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,9 @@
1717
;; API
1818
(defn versions [request]
1919
(let [project (-> request :params :project)
20-
versions (db-req/versions-by-repo-name (get-db request) {:name project})]
21-
versions))
20+
; versions (db-req/versions-by-repo-name (get-db request) {:name project})
21+
repo (db-req/repo-by-name (get-db request) {:name project})]
22+
(->> repo :actual-versions (into '()) reverse)))
2223

2324

2425
(defn delete-version [request]
@@ -28,7 +29,8 @@
2829
branch (db-req/version-by-name (get-db request) {:repo-id (:id repo)
2930
:name version})]
3031
(timbre/info "Delete version request: " project version)
31-
(db-actions/remove-branch (get-db request) branch)
32+
(when branch
33+
(db-actions/remove-branch (get-db request) branch))
3234
(web-utils/response {:status :ok})))
3335

3436

@@ -39,7 +41,8 @@
3941
branch (db-req/version-by-name (get-db request) {:repo-id (:id repo)
4042
:name version})]
4143
(timbre/info "Rebuild version request: " project version)
42-
(db-actions/remove-branch (get-db request) branch)
44+
(when branch
45+
(db-actions/remove-branch (get-db request) branch))
4346
(redis/enqueue (get-redis request)
4447
(get-redis-queue request)
4548
{:repo project

src/sql/queries/repos.sql

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,7 @@ INSERT INTO repos (name, title, templates, owner_id) VALUES (:name, :title, :tem
55
SELECT * FROM repos ORDER BY title;
66

77
-- name: sql-repo-by-name
8-
SELECT * FROM repos WHERE name = :name;
8+
SELECT * FROM repos WHERE name = :name;
9+
10+
-- name: sql-repo-update-actual-versions!
11+
UPDATE repos SET actual_versions = :versions WHERE id = :id;

src/sql/queries/samples.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ ORDER BY version DESC;
8888
-- INSERT INTO samples (name, description, short_description, tags, export, scripts, local_scripts, styles, code_type, code, style_type, style, markup_type, markup) VALUES :values;
8989

9090
-- name: sql-delete-samples!
91-
DELETE FROM samples WHERE version_id = :version_id;
91+
DELETE FROM samples WHERE version_id IS NOT NULL AND version_id = :version_id;
9292

9393

9494

src/sql/schema_postgre.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ CREATE TABLE repos (
2929
title VARCHAR(100),
3030
templates BOOLEAN,
3131
owner_id BIGINT REFERENCES users(id),
32-
create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
32+
create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
33+
actual_versions VARCHAR(256)[] -- for admin panel - to display all versions
3334
);
3435

3536

0 commit comments

Comments
 (0)