From 3289755b0136034968db341e4de5d8addf457d12 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adri=C3=A1n=20Robotka?= <robotka.adrian@gmail.com>
Date: Mon, 11 Jan 2021 01:00:57 +0100
Subject: [PATCH] add universal.yaml

---
 .gitlab-ci.yml                            |  7 ++++
 ci/pipeline/{role-test.yaml => role.yaml} |  0
 ci/pipeline/universal.yaml                |  7 ++++
 gitlab-api-opressor/setup_ci.py           | 39 +++++++++++++++++++++++
 gitlab-api-opressor/setup_projects.py     |  1 +
 5 files changed, 54 insertions(+)
 create mode 100644 .gitlab-ci.yml
 rename ci/pipeline/{role-test.yaml => role.yaml} (100%)
 create mode 100644 ci/pipeline/universal.yaml
 create mode 100644 gitlab-api-opressor/setup_ci.py

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..758f060
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,7 @@
+---
+
+# Ordering stages and jobs
+stages:
+  - test
+
+#include: /job/editorconfig-check.yaml
diff --git a/ci/pipeline/role-test.yaml b/ci/pipeline/role.yaml
similarity index 100%
rename from ci/pipeline/role-test.yaml
rename to ci/pipeline/role.yaml
diff --git a/ci/pipeline/universal.yaml b/ci/pipeline/universal.yaml
new file mode 100644
index 0000000..c7162be
--- /dev/null
+++ b/ci/pipeline/universal.yaml
@@ -0,0 +1,7 @@
+---
+
+ansible-lint:
+  stage: test
+  image: registry.kszk.bme.hu/baseimg/ansible
+  script:
+    - ansible-lint .
diff --git a/gitlab-api-opressor/setup_ci.py b/gitlab-api-opressor/setup_ci.py
new file mode 100644
index 0000000..d3efae6
--- /dev/null
+++ b/gitlab-api-opressor/setup_ci.py
@@ -0,0 +1,39 @@
+from functions import *
+
+
+def repo_action(project_meta):
+    setup_project(project_meta)
+
+
+def update_project(project_meta, data, postfix=''):
+    path = 'projects/' + str(project_meta['id']) + postfix
+    r = requests.put(url=get_url(path), data=data)
+    if r.ok:
+        print("Updated: " + project_meta['name'])
+    else:
+        print("ERROR: " + project_meta['name'])
+        print(r.content)
+
+
+def setup_project(project_meta):
+    data = {
+        'merge_method': 'rebase_merge',
+
+        'merge_requests_enabled': True,
+        'lfs_enabled': True,
+        'only_allow_merge_if_pipeline_succeeds': True,
+        'only_allow_merge_if_all_discussions_are_resolved': True,
+        'remove_source_branch_after_merge': True,
+
+        'issues_enabled': False,
+        'snippets_enabled': False,
+        'wiki_enabled': False,
+        'container_registry_enabled': False,
+        'shared_runners_enabled': False,
+        'auto_devops_enabled': False
+    }
+    update_project(project_meta, data)
+
+
+if __name__ == "__main__":
+    iterate_on_groups(repo_action)
diff --git a/gitlab-api-opressor/setup_projects.py b/gitlab-api-opressor/setup_projects.py
index d3efae6..9c12f4f 100644
--- a/gitlab-api-opressor/setup_projects.py
+++ b/gitlab-api-opressor/setup_projects.py
@@ -31,6 +31,7 @@ def setup_project(project_meta):
         'container_registry_enabled': False,
         'shared_runners_enabled': False,
         'auto_devops_enabled': False
+        'ci_config_path': ''
     }
     update_project(project_meta, data)
 
-- 
GitLab