membphis commented on a change in pull request #2092:
URL: https://github.com/apache/apisix/pull/2092#discussion_r486965508
##########
File path: bin/apisix
##########
@@ -637,6 +637,45 @@ local function read_yaml_conf()
merge_conf(default_conf, user_conf)
end
+ -- check the Admin API token
+ if default_conf.apisix.enable_admin then
+ local help = [[
+ERROR: missing valid apisix.admin_key
+
+Needs to set Admin API key in file `conf/config.yaml` . Here is an example:
+
+#############################
+apisix:
+ admin_key:
+ -
+ name: "admin"
+ key: # <-- replace with your Admin Key
+ role: admin
+#############################
+
+Then you can use it to access Admin API.
+eg: $ curl -i http://127.0.0.1:]] .. default_conf.apisix.node_listen ..
[[/apisix/admin/routes/1 -H 'X-API-KEY: YOUR-KEY'
+]]
+ if type(default_conf.apisix.admin_key) ~= "table" or
+ #default_conf.apisix.admin_key == 0
+ then
+ io.stderr:write(help, "\n")
+ os.exit(1)
+ end
+
+ for _, admin in ipairs(default_conf.apisix.admin_key) do
+ if type(admin.key) == "table" then
+ admin.key = ""
+ else
+ admin.key = tostring(admin.key)
+ end
+
+ if admin.key == "" or admin.key:gsub("*", "") == "" then
Review comment:
```shell
$ ./bin/apisix start
ERROR: missing valid apisix.admin_key
You can call `./bin/apisix gen_admin_key` to generate a new Admin API key or
manually update the `conf/config.yaml` file.
$ ./bin/apisix gen_admin_key
generate admin key successfully
$ ./bin/apisix start
$ ps -ef | grep apisix
resty 551863 1 0 06:45 ? 00:00:00 nginx: master process
openresty -p /home/resty/git/membphis/apisix -c
/home/resty/git/membphis/apisix/conf/nginx.conf
resty 552021 253872 0 06:46 pts/0 00:00:00 grep --color=auto
--exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg
--exclude-dir=.svn apisix
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]