Skip to content

refactor(admin): refactor resource routes#8611

Merged
spacewander merged 22 commits into
apache:masterfrom
An-DJ:refactor-admin-routes
Jan 12, 2023
Merged

refactor(admin): refactor resource routes#8611
spacewander merged 22 commits into
apache:masterfrom
An-DJ:refactor-admin-routes

Conversation

@An-DJ

@An-DJ An-DJ commented Jan 5, 2023

Copy link
Copy Markdown
Contributor

Description

Fixes #8569

Checklist

  • I have explained the need for this PR and the problem it solves
  • I have explained the changes or the new features added to this PR
  • I have added tests corresponding to this change
  • I have updated the documentation to reflect this change
  • I have verified that this change is backward compatible (If not, please discuss on the APISIX mailing list first)

Comment thread apisix/admin/resource.lua Outdated
Comment thread apisix/admin/routes.lua Outdated
Comment thread apisix/admin/routes.lua Outdated
Comment thread apisix/admin/resource.lua Outdated

local res, err = core.etcd.get(key, not id)
if not res then
core.log.error("failed to get " .. self.kind .. "[", key, "] from etcd: ", err)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The log function will concat the string, no need to do it ourselves

Comment thread apisix/admin/resource.lua Outdated
Comment thread apisix/admin/resource.lua Outdated
Comment thread apisix/admin/resource.lua Outdated
local code, err, node_val = core.table.patch(node_value, sub_path, conf)
node_value = node_val
if code then
return code, err

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Look like we need to use {error_msg = err} here?

Comment thread apisix/admin/routes.lua Outdated


return _M
return resource.new("routes", "route", check_conf)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think about it a bit.
Maybe it would be better to pass an opt like:

{
        name = name,
        kind = kind,
        check_conf = check_conf
    }

so people don't need to remember the order.

Comment thread apisix/admin/routes.lua Outdated
}


local function check_conf(id, conf, need_id)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Look like we can also share the id check logic? It is the same in other resources.

Comment thread apisix/admin/routes.lua Outdated
name = "routes",
kind = "route",
schema = core.schema.route,
check_conf_self = check_conf

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

check_conf_self is not a good name. It would be better to use a valid English verb phrase as the method name.

Comment thread apisix/admin/resource.lua Outdated


function _M.new(opt)
return setmetatable({

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
return setmetatable({
return setmetatable(opt

can be simpler

Comment thread apisix/admin/routes.lua Outdated
@soulbird soulbird mentioned this pull request Jan 11, 2023
5 tasks
@spacewander
spacewander merged commit 3b35a99 into apache:master Jan 12, 2023
hongbinhsu added a commit to fitphp/apix that referenced this pull request Jan 30, 2023
* upstream/master: (67 commits)
  fix: grpc-transcode plugin: fix map data population (apache#8731)
  change(jwt-auth): unify apisix/core/vault.lua and apisix/secret/vault.lua (apache#8660)
  feat: stream subsystem support consul_kv service discovery (apache#8633)
  fix(proxy-mirror): use with uri rewrite (apache#8718)
  ci: move helper script to the right dir (apache#8691)
  refactor(pubsub): simpify the get_cmd implementation (apache#8608)
  feat: stream subsystem support kubernetes service discovery (apache#8640)
  docs: fix deployment links (apache#8714)
  fix: remove backslash before slash when encoding (apache#8684)
  ci: kafka should register port in the zookeeper same as exposed (apache#8672)
  docs: fix plugin config naming (apache#8701)
  docs: fix code block (apache#8700)
  docs: rename kms to secret (apache#8697)
  docs: replace transparent logos with white background logos (apache#8689)
  fix: upgrade lua-resty-etcd to 1.10.3 (apache#8668)
  fix: upgrade casbin to 1.41.3 to improve performance (apache#8676)
  chore: make send_stream_request more clear (apache#8627)
  feat: stream subsystem support nacos service discovery (apache#8584)
  feat: stream subsystem support dns service discovery (apache#8593)
  refactor(admin): refactor resource routes (apache#8611)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: As a user, I want to refactor the resources under apisix.admin, so that we don't need to repeat

3 participants