bzp2010 commented on a change in pull request #913:
URL: https://github.com/apache/apisix-website/pull/913#discussion_r817271598



##########
File path: scripts/generate-repos-info.js
##########
@@ -0,0 +1,71 @@
+const fs = require("fs");
+const axios = require("axios");
+const listr = require("listr")
+
+axios.defaults.timeout = 5000;
+
+const axiosConfig = {
+  headers: {
+    "content-type": "application/json",
+    Accept: "application/vnd.github.v3+json"
+  },
+}
+
+const repoList = require("../website/config/docs").map(v => v.githubRepo)
+const res = {}
+
+const tasks = new listr([
+  {
+    title: "Fetch repos' info and good first issues",
+    task: ()=> new listr(repoList.map((repo)=>{
+      return {
+        title: `Fetch ${repo}`,
+        task: ()=>new listr([

Review comment:
       Formatting code required.

##########
File path: website/repos-info.json
##########
@@ -0,0 +1 @@
+{"apache/apisix":{"info":{"description":"The Cloud-Native API 
Gateway","Star":8480,"Watch":281,"Fork":1558},"issues":[{"comments":5,"number":6460,"title":"request
 help: in authz-keycloak plugin is it possible to customize the \"access 
denied\" 
message?","htmlUrl":"https://github.com/apache/apisix/issues/6460"},{"comments":5,"number":6410,"title":"request
 help: mTLS Between APISIX and 
Upstream","htmlUrl":"https://github.com/apache/apisix/issues/6410"},{"comments":2,"number":6406,"title":"docs:
 add datadog plugin document in 
Chinese","htmlUrl":"https://github.com/apache/apisix/issues/6406"},{"comments":0,"number":6366,"title":"feat:
 As a User, I want to have the port in the Host header when `pass_host = node` 
and the port is not 
standard","htmlUrl":"https://github.com/apache/apisix/issues/6366"},{"comments":8,"number":6344,"title":"request
 help: forward-auth plugin cann't support request 
body","htmlUrl":"https://github.com/apache/apisix/issues/6344"},{"comments":3,"number":6332,"title
 ":"docs: need to update 
https://hub.docker.com/r/apache/apisix","htmlUrl":"https://github.com/apache/apisix/issues/6332"},{"comments":13,"number":6197,"title":"request
 help: How to current limit both in minutes and day  by using plugin 
limit-count","htmlUrl":"https://github.com/apache/apisix/issues/6197"},{"comments":4,"number":6118,"title":"docs:
  No docs for 
Vault","htmlUrl":"https://github.com/apache/apisix/issues/6118"},{"comments":13,"number":5966,"title":"doc:
 benchmark results is not so good,what is the 
problem,help","htmlUrl":"https://github.com/apache/apisix/issues/5966"},{"comments":3,"number":5915,"title":"request
 help: logger plugins supports limit size of request/response 
body","htmlUrl":"https://github.com/apache/apisix/issues/5915"},{"comments":3,"number":5710,"title":"request
 help: Can the jwt plugin support custom authentication parameter 
names?","htmlUrl":"https://github.com/apache/apisix/issues/5710"},{"comments":7,"number":5451,"title":"request
 help: Does \brespo
 nse-rewrite plugin support partial or regular 
substitution","htmlUrl":"https://github.com/apache/apisix/issues/5451"},{"comments":4,"number":5305,"title":"request
 help: APISIX Proxy-mirror plugin support custom 
path","htmlUrl":"https://github.com/apache/apisix/issues/5305"},{"comments":3,"number":5244,"title":"Is
 it possible to read environment variables from yaml configuration 
files?","htmlUrl":"https://github.com/apache/apisix/issues/5244"},{"comments":9,"number":5165,"title":"bug:
 plugin wolf-rbac  /apisix/plugin/wolf-rbac/login  resturn header is text/plain 
,  cors 
error","htmlUrl":"https://github.com/apache/apisix/issues/5165"},{"comments":11,"number":4933,"title":"docs:
 limit-conn plugin in stream 
proxy","htmlUrl":"https://github.com/apache/apisix/issues/4933"},{"comments":9,"number":3931,"title":"redirect
 plugins add curl test for 
`http_to_https`","htmlUrl":"https://github.com/apache/apisix/issues/3931"},{"comments":11,"number":2848,"title":"request
 help: High cpu & network t
 raffic triggered when batch processing router rules with large number of 
rules","htmlUrl":"https://github.com/apache/apisix/issues/2848"}]},"apache/apisix-dashboard":{"info":{"description":"Dashboard
 for Apache 
APISIX","Star":561,"Watch":41,"Fork":296},"issues":[{"comments":1,"number":2197,"title":"Proposal:
 Migrate old backend e2e 
tests","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2197"},{"comments":7,"number":2189,"title":"support
 protobuf on 
Web","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2189"},{"comments":9,"number":2148,"title":"Proposal:
 support Plugin Metadata 
API","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2148"},{"comments":2,"number":2107,"title":"Proposal:
 goreleaser as release automation 
tool","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2107"},{"comments":7,"number":2095,"title":"Feature
 request: support appending query string in redirect 
plugin","htmlUrl":"https://github.com/apache/apisix-dashboard/i
 
ssues/2095"},{"comments":6,"number":1991,"title":"在预览插件的时候,建议只显示启动的插件而不是显示所有的插件","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1991"},{"comments":2,"number":1953,"title":"At
 least storage the PATH of the grafana in the etcd 
","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1953"},{"comments":29,"number":1944,"title":"When
 Dashboard and APISIX version do not match, make the prompt information 
clearer","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1944"},{"comments":3,"number":1777,"title":"build
 UI for serverless-xx 
plugin","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1777"},{"comments":7,"number":1642,"title":"Whether
 to consider adding scheme configuration items in the upstream 
configuration","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1642"},{"comments":4,"number":1630,"title":"improve
 Consumer module","htmlUrl":"https://github.com/apache/apisix-das
 hboard/issues/1630"},{"comments":1,"number":1629,"title":"improve 
Upstream/Service/SSL/System Info 
module","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1629"},{"comments":4,"number":1621,"title":"feat:
 Making the list page paginator a standalone 
component","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1621"},{"comments":9,"number":1500,"title":"Feat:
 Rewrite all E2E tests using the 
Ginkgo","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1500"},{"comments":10,"number":1493,"title":"Support
 More selectors on List 
page","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1493"},{"comments":7,"number":1487,"title":"Support
 duplicate one existing 
Route","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1487"},{"comments":11,"number":1407,"title":"i18n:
 Need more language 
support","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1407"},{"comments":0,"number":1363,"title":"add
 tip for plugin editor","htmlUrl":"http
 
s://github.com/apache/apisix-dashboard/issues/1363"},{"comments":0,"number":1292,"title":"chore:
 If the routing rules contain the same domain name, can there be a better 
display","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1292"},{"comments":1,"number":826,"title":"docs:
 Instructions for compiling and using go binary for different 
platforms","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/826"},{"comments":3,"number":821,"title":"[Proposal]:
 Monitor 
Routes","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/821"},{"comments":2,"number":745,"title":"Record
 some videos to demonstrate some basic operations on 
dashboard","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/745"},{"comments":11,"number":733,"title":"Operation
 experience 
optimization","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/733"},{"comments":14,"number":648,"title":"feat:
 Should apisix dashboard support multi-tenancy 
feature?","htmlUrl":"https://github.c
 
om/apache/apisix-dashboard/issues/648"},{"comments":10,"number":578,"title":"Can
 I set up stream_proxy through the new version of apisix-dashboard? No 
interface seems to be 
found","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/578"}]},"apache/apisix-ingress-controller":{"info":{"description":"ingress
 controller for 
K8s","Star":437,"Watch":41,"Fork":157},"issues":[{"comments":0,"number":880,"title":"e2e:
 custom 
registry","htmlUrl":"https://github.com/apache/apisix-ingress-controller/issues/880"},{"comments":1,"number":782,"title":"request
 help:  APISIX Ingress Annotation  
Document","htmlUrl":"https://github.com/apache/apisix-ingress-controller/issues/782"},{"comments":21,"number":73,"title":"kubectl
 plugin 
support","htmlUrl":"https://github.com/apache/apisix-ingress-controller/issues/73"}]},"apache/apisix-helm-chart":{"info":{"description":"Apache
 APISIX Helm 
Chart","Star":90,"Watch":29,"Fork":67},"issues":[]},"apache/apisix-docker":{"info":{"description":"the
 docker fo
 r Apache 
APISIX","Star":338,"Watch":35,"Fork":227},"issues":[{"comments":0,"number":200,"title":"feat
 request: build dashboard docker image on travis ci ARM 
machine","htmlUrl":"https://github.com/apache/apisix-docker/issues/200"}]},"apache/apisix-java-plugin-runner":{"info":{"description":"APISIX
 Plugin Runner in 
Java","Star":57,"Watch":25,"Fork":40},"issues":[{"comments":1,"number":92,"title":"request
 help: How to get all the information in the original request 
header.","htmlUrl":"https://github.com/apache/apisix-java-plugin-runner/issues/92"},{"comments":5,"number":75,"title":"feature:
 java plugin log path 
error","htmlUrl":"https://github.com/apache/apisix-java-plugin-runner/issues/75"},{"comments":3,"number":49,"title":"[discuss]:
 increase the timeout of socket communication between apisix and java 
plugin.","htmlUrl":"https://github.com/apache/apisix-java-plugin-runner/issues/49"}]},"apache/apisix-go-plugin-runner":{"info":{"description":"Go
 Plugin Runner for APISIX","Star":66,"W
 
atch":27,"Fork":29},"issues":[]},"apache/apisix-python-plugin-runner":{"info":{"description":"Apache
 APISIX Python plugin runner","Star":15,"Watch":20,"Fork":13},"issues":[]}}

Review comment:
       In `info` section, we should keep the key in lower case. Like, `Star`, 
`Watch`, `Fork`.

##########
File path: scripts/generate-repos-info.js
##########
@@ -0,0 +1,71 @@
+const fs = require("fs");
+const axios = require("axios");
+const listr = require("listr")
+
+axios.defaults.timeout = 5000;
+
+const axiosConfig = {
+  headers: {
+    "content-type": "application/json",
+    Accept: "application/vnd.github.v3+json"
+  },
+}
+
+const repoList = require("../website/config/docs").map(v => v.githubRepo)
+const res = {}
+
+const tasks = new listr([
+  {
+    title: "Fetch repos' info and good first issues",
+    task: ()=> new listr(repoList.map((repo)=>{
+      return {
+        title: `Fetch ${repo}`,
+        task: ()=>new listr([
+          {
+            title: `${repo}'s info`,
+            task: () => axios.get(`https://api.github.com/repos/${repo}`, 
axiosConfig)

Review comment:
       We should consider the case of a failed data pull, at which point we 
might be able to interrupt the CI execution.

##########
File path: website/repos-info.json
##########
@@ -0,0 +1 @@
+{"apache/apisix":{"info":{"description":"The Cloud-Native API 
Gateway","Star":8480,"Watch":281,"Fork":1558},"issues":[{"comments":5,"number":6460,"title":"request
 help: in authz-keycloak plugin is it possible to customize the \"access 
denied\" 
message?","htmlUrl":"https://github.com/apache/apisix/issues/6460"},{"comments":5,"number":6410,"title":"request
 help: mTLS Between APISIX and 
Upstream","htmlUrl":"https://github.com/apache/apisix/issues/6410"},{"comments":2,"number":6406,"title":"docs:
 add datadog plugin document in 
Chinese","htmlUrl":"https://github.com/apache/apisix/issues/6406"},{"comments":0,"number":6366,"title":"feat:
 As a User, I want to have the port in the Host header when `pass_host = node` 
and the port is not 
standard","htmlUrl":"https://github.com/apache/apisix/issues/6366"},{"comments":8,"number":6344,"title":"request
 help: forward-auth plugin cann't support request 
body","htmlUrl":"https://github.com/apache/apisix/issues/6344"},{"comments":3,"number":6332,"title
 ":"docs: need to update 
https://hub.docker.com/r/apache/apisix","htmlUrl":"https://github.com/apache/apisix/issues/6332"},{"comments":13,"number":6197,"title":"request
 help: How to current limit both in minutes and day  by using plugin 
limit-count","htmlUrl":"https://github.com/apache/apisix/issues/6197"},{"comments":4,"number":6118,"title":"docs:
  No docs for 
Vault","htmlUrl":"https://github.com/apache/apisix/issues/6118"},{"comments":13,"number":5966,"title":"doc:
 benchmark results is not so good,what is the 
problem,help","htmlUrl":"https://github.com/apache/apisix/issues/5966"},{"comments":3,"number":5915,"title":"request
 help: logger plugins supports limit size of request/response 
body","htmlUrl":"https://github.com/apache/apisix/issues/5915"},{"comments":3,"number":5710,"title":"request
 help: Can the jwt plugin support custom authentication parameter 
names?","htmlUrl":"https://github.com/apache/apisix/issues/5710"},{"comments":7,"number":5451,"title":"request
 help: Does \brespo
 nse-rewrite plugin support partial or regular 
substitution","htmlUrl":"https://github.com/apache/apisix/issues/5451"},{"comments":4,"number":5305,"title":"request
 help: APISIX Proxy-mirror plugin support custom 
path","htmlUrl":"https://github.com/apache/apisix/issues/5305"},{"comments":3,"number":5244,"title":"Is
 it possible to read environment variables from yaml configuration 
files?","htmlUrl":"https://github.com/apache/apisix/issues/5244"},{"comments":9,"number":5165,"title":"bug:
 plugin wolf-rbac  /apisix/plugin/wolf-rbac/login  resturn header is text/plain 
,  cors 
error","htmlUrl":"https://github.com/apache/apisix/issues/5165"},{"comments":11,"number":4933,"title":"docs:
 limit-conn plugin in stream 
proxy","htmlUrl":"https://github.com/apache/apisix/issues/4933"},{"comments":9,"number":3931,"title":"redirect
 plugins add curl test for 
`http_to_https`","htmlUrl":"https://github.com/apache/apisix/issues/3931"},{"comments":11,"number":2848,"title":"request
 help: High cpu & network t
 raffic triggered when batch processing router rules with large number of 
rules","htmlUrl":"https://github.com/apache/apisix/issues/2848"}]},"apache/apisix-dashboard":{"info":{"description":"Dashboard
 for Apache 
APISIX","Star":561,"Watch":41,"Fork":296},"issues":[{"comments":1,"number":2197,"title":"Proposal:
 Migrate old backend e2e 
tests","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2197"},{"comments":7,"number":2189,"title":"support
 protobuf on 
Web","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2189"},{"comments":9,"number":2148,"title":"Proposal:
 support Plugin Metadata 
API","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2148"},{"comments":2,"number":2107,"title":"Proposal:
 goreleaser as release automation 
tool","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/2107"},{"comments":7,"number":2095,"title":"Feature
 request: support appending query string in redirect 
plugin","htmlUrl":"https://github.com/apache/apisix-dashboard/i
 
ssues/2095"},{"comments":6,"number":1991,"title":"在预览插件的时候,建议只显示启动的插件而不是显示所有的插件","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1991"},{"comments":2,"number":1953,"title":"At
 least storage the PATH of the grafana in the etcd 
","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1953"},{"comments":29,"number":1944,"title":"When
 Dashboard and APISIX version do not match, make the prompt information 
clearer","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1944"},{"comments":3,"number":1777,"title":"build
 UI for serverless-xx 
plugin","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1777"},{"comments":7,"number":1642,"title":"Whether
 to consider adding scheme configuration items in the upstream 
configuration","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1642"},{"comments":4,"number":1630,"title":"improve
 Consumer module","htmlUrl":"https://github.com/apache/apisix-das
 hboard/issues/1630"},{"comments":1,"number":1629,"title":"improve 
Upstream/Service/SSL/System Info 
module","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1629"},{"comments":4,"number":1621,"title":"feat:
 Making the list page paginator a standalone 
component","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1621"},{"comments":9,"number":1500,"title":"Feat:
 Rewrite all E2E tests using the 
Ginkgo","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1500"},{"comments":10,"number":1493,"title":"Support
 More selectors on List 
page","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1493"},{"comments":7,"number":1487,"title":"Support
 duplicate one existing 
Route","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1487"},{"comments":11,"number":1407,"title":"i18n:
 Need more language 
support","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1407"},{"comments":0,"number":1363,"title":"add
 tip for plugin editor","htmlUrl":"http
 
s://github.com/apache/apisix-dashboard/issues/1363"},{"comments":0,"number":1292,"title":"chore:
 If the routing rules contain the same domain name, can there be a better 
display","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/1292"},{"comments":1,"number":826,"title":"docs:
 Instructions for compiling and using go binary for different 
platforms","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/826"},{"comments":3,"number":821,"title":"[Proposal]:
 Monitor 
Routes","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/821"},{"comments":2,"number":745,"title":"Record
 some videos to demonstrate some basic operations on 
dashboard","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/745"},{"comments":11,"number":733,"title":"Operation
 experience 
optimization","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/733"},{"comments":14,"number":648,"title":"feat:
 Should apisix dashboard support multi-tenancy 
feature?","htmlUrl":"https://github.c
 
om/apache/apisix-dashboard/issues/648"},{"comments":10,"number":578,"title":"Can
 I set up stream_proxy through the new version of apisix-dashboard? No 
interface seems to be 
found","htmlUrl":"https://github.com/apache/apisix-dashboard/issues/578"}]},"apache/apisix-ingress-controller":{"info":{"description":"ingress
 controller for 
K8s","Star":437,"Watch":41,"Fork":157},"issues":[{"comments":0,"number":880,"title":"e2e:
 custom 
registry","htmlUrl":"https://github.com/apache/apisix-ingress-controller/issues/880"},{"comments":1,"number":782,"title":"request
 help:  APISIX Ingress Annotation  
Document","htmlUrl":"https://github.com/apache/apisix-ingress-controller/issues/782"},{"comments":21,"number":73,"title":"kubectl
 plugin 
support","htmlUrl":"https://github.com/apache/apisix-ingress-controller/issues/73"}]},"apache/apisix-helm-chart":{"info":{"description":"Apache
 APISIX Helm 
Chart","Star":90,"Watch":29,"Fork":67},"issues":[]},"apache/apisix-docker":{"info":{"description":"the
 docker fo
 r Apache 
APISIX","Star":338,"Watch":35,"Fork":227},"issues":[{"comments":0,"number":200,"title":"feat
 request: build dashboard docker image on travis ci ARM 
machine","htmlUrl":"https://github.com/apache/apisix-docker/issues/200"}]},"apache/apisix-java-plugin-runner":{"info":{"description":"APISIX
 Plugin Runner in 
Java","Star":57,"Watch":25,"Fork":40},"issues":[{"comments":1,"number":92,"title":"request
 help: How to get all the information in the original request 
header.","htmlUrl":"https://github.com/apache/apisix-java-plugin-runner/issues/92"},{"comments":5,"number":75,"title":"feature:
 java plugin log path 
error","htmlUrl":"https://github.com/apache/apisix-java-plugin-runner/issues/75"},{"comments":3,"number":49,"title":"[discuss]:
 increase the timeout of socket communication between apisix and java 
plugin.","htmlUrl":"https://github.com/apache/apisix-java-plugin-runner/issues/49"}]},"apache/apisix-go-plugin-runner":{"info":{"description":"Go
 Plugin Runner for APISIX","Star":66,"W
 
atch":27,"Fork":29},"issues":[]},"apache/apisix-python-plugin-runner":{"info":{"description":"Apache
 APISIX Python plugin runner","Star":15,"Watch":20,"Fork":13},"issues":[]}}

Review comment:
       And, maybe we can change each data value to 0 default.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to