Merge pull request #1723 from merico-dev/release-v0.10
chore: release v0.10.1
diff --git a/releases/lake-v0.10.1/docker-compose.yml b/releases/lake-v0.10.1/docker-compose.yml
new file mode 100644
index 0000000..70ec528
--- /dev/null
+++ b/releases/lake-v0.10.1/docker-compose.yml
@@ -0,0 +1,62 @@
+version: "3"
+services:
+ mysql:
+ image: mysql:8.0.26
+ platform: linux/x86_64
+ volumes:
+ - mysql-storage:/var/lib/mysql
+ restart: always
+ ports:
+ - 127.0.0.1:3306:3306
+ environment:
+ MYSQL_ROOT_PASSWORD: admin
+ MYSQL_DATABASE: lake
+ MYSQL_USER: merico
+ MYSQL_PASSWORD: merico
+
+ grafana:
+ image: mericodev/grafana:v0.10.1
+ ports:
+ - 3002:3000
+ volumes:
+ - grafana-storage:/var/lib/grafana
+ environment:
+ GF_USERS_ALLOW_SIGN_UP: 'false'
+ GF_DASHBOARDS_JSON_ENABLED: 'true'
+ GF_INSTALL_PLUGINS: grafana-piechart-panel
+ GF_LIVE_ALLOWED_ORIGINS: '*'
+ MYSQL_URL: mysql:3306
+ MYSQL_DATABASE: lake
+ MYSQL_USER: merico
+ MYSQL_PASSWORD: merico
+ restart: always
+ depends_on:
+ - mysql
+
+ devlake:
+ image: mericodev/lake:v0.10.1
+ ports:
+ - 127.0.0.1:8080:8080
+ restart: always
+ volumes:
+ - ./.env:/app/.env
+ depends_on:
+ - mysql
+
+ config-ui:
+ image: mericodev/config-ui:v0.10.1
+ ports:
+ - 127.0.0.1:4000:80
+ env_file:
+ - ./.env
+ environment:
+ DEVLAKE_ENDPOINT: devlake:8080
+ GRAFANA_ENDPOINT: http://localhost:3002
+ #ADMIN_USER: devlake
+ #ADMIN_PASS: merico
+ depends_on:
+ - devlake
+
+volumes:
+ mysql-storage:
+ grafana-storage:
diff --git a/releases/lake-v0.10.1/env.example b/releases/lake-v0.10.1/env.example
new file mode 100644
index 0000000..1f48cac
--- /dev/null
+++ b/releases/lake-v0.10.1/env.example
@@ -0,0 +1,115 @@
+#############
+# Lake core #
+#############
+
+# Lake plugin dir, absolute path or relative path
+PLUGIN_DIR=bin/plugins
+
+# Lake Database Connection String
+DB_URL=merico:merico@tcp(mysql:3306)/lake?charset=utf8mb4&parseTime=True
+# Silent Error Warn Info
+DB_LOGGING_LEVEL=Error
+
+# Lake REST API
+PORT=:8080
+MODE=release
+
+NOTIFICATION_ENDPOINT=
+NOTIFICATION_SECRET=
+
+API_TIMEOUT=10s
+API_RETRY=3
+API_REQUESTS_PER_HOUR=10000
+#TEMPORAL_URL=temporal:7233
+TEMPORAL_URL=
+TEMPORAL_TASK_QUEUE=
+# Debug Info Warn Error
+LOGGING_LEVEL=
+
+
+########################
+# Docker configuration #
+########################
+
+COMPOSE_PROFILES=user
+
+######################
+# Jira configuration #
+######################
+
+# Jira configuration has been migrated into MySQL #
+
+########################
+# Gitlab configuration #
+########################
+
+GITLAB_ENDPOINT=https://gitlab.com/api/v4/
+GITLAB_AUTH=
+GITLAB_PROXY=
+GITLAB_API_REQUESTS_PER_HOUR=
+
+##########################
+# Jira <> Gitlab mapping #
+##########################
+
+# Lake maintains a many-to-many relationship between Jira boards and Gitlab projects
+# Format:
+# JIRA_BOARD_GITLAB_PROJECTS=JIRA_BOARD_ID1:GITLAB_PROJECT_ID1,PROJECT_ID2;JIRA_BOARD_ID2:...
+JIRA_BOARD_GITLAB_PROJECTS=
+
+#########################
+# Jenkins configuration #
+#########################
+
+JENKINS_ENDPOINT=
+JENKINS_USERNAME=
+JENKINS_PASSWORD=
+JENKINS_PROXY=
+JENKINS_API_REQUESTS_PER_HOUR=
+
+#########################
+# Feishu configuration #
+#########################
+
+FEISHU_APPID=
+FEISHU_APPSCRECT=
+FEISHU_ENDPOINT=https://open.feishu.cn/open-apis/vc/v1/
+
+########################
+# GitHub configuration #
+########################
+
+GITHUB_ENDPOINT=https://api.github.com/
+GITHUB_AUTH=***
+GITHUB_PROXY=
+GITHUB_API_REQUESTS_PER_HOUR=
+# GITHUB_PR_TYPE=type/(.*)$ the program will extract the value in (), in this example, you will get "refactor" from "type/refactor"
+GITHUB_PR_TYPE='type/(.*)$'
+# GITHUB_PR_COMPONENT=component/(.*)$ the program will extract the value in (), in this example, you will get "plugins" from "component/plugins"
+GITHUB_PR_COMPONENT='component/(.*)$'
+# GITHUB_ISSUE_SEVERITY=severity/(.*)$ the program will extract the value in (), in this example, you will get "refactor" from "type/refactor"
+GITHUB_ISSUE_SEVERITY='severity/(.*)$'
+# GITHUB_ISSUE_COMPONENT=component/(.*)$ the program will extract the value in (), in this example, you will get "refactor" from "type/refactor"
+GITHUB_ISSUE_COMPONENT='component/(.*)$'
+GITHUB_ISSUE_PRIORITY='^(highest|high|medium|low)$'
+GITHUB_ISSUE_TYPE_BUG='^(bug|failure|error)$'
+GITHUB_ISSUE_TYPE_REQUIREMENT='^(feat|feature|proposal|requirement)$'
+GITHUB_ISSUE_TYPE_INCIDENT=
+# GITHUB_PR_BODY_CLOSE_PATTERN='(?mi)(fix|close|resolve|fixes|closes|resolves|fixed|closed|resolved)[\s]*.*(((and )?(#|https:\/\/github.com\/%s\/%s\/issues\/)\d+[ ]*)+)'
+GITHUB_PR_BODY_CLOSE_PATTERN='(?mi)(fix|close|resolve|fixes|closes|resolves|fixed|closed|resolved)[\s]*.*(((and )?(#|https:\/\/github.com\/%s\/%s\/issues\/)\d+[ ]*)+)'
+# GITHUB_PR_TITLE_PATTERN='.*\(#(\d+)\)'
+GITHUB_PR_TITLE_PATTERN='.*\(#(\d+)\)'
+
+##########################
+# AE (Merico-Analysis-Engine) configuration #
+##########################
+AE_APP_ID=
+AE_SECRET_KEY=
+AE_ENDPOINT=
+AE_RATE_LIMIT=100
+AE_PROXY=
+
+##########################
+# Sensitive information encryption key
+##########################
+ENCODE_KEY=