From 1d8eac8cf47beddb4293454df6848ceb1a50d158 Mon Sep 17 00:00:00 2001 From: He Weiwei Date: Tue, 27 Aug 2019 01:03:48 +0000 Subject: [PATCH] fix(chart,quota): fix path regexp of chart creation and deletion Signed-off-by: He Weiwei --- src/core/middlewares/chart/builder.go | 4 +-- src/core/middlewares/chart/handler_test.go | 39 ++++++++++++++++++++++ 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/src/core/middlewares/chart/builder.go b/src/core/middlewares/chart/builder.go index ba54cd2de..76d623748 100644 --- a/src/core/middlewares/chart/builder.go +++ b/src/core/middlewares/chart/builder.go @@ -29,8 +29,8 @@ import ( ) var ( - deleteChartVersionRe = regexp.MustCompile(`^/api/chartrepo/(?P\w+)/charts/(?P\w+)/(?P[\w\d\.]+)/?$`) - createChartVersionRe = regexp.MustCompile(`^/api/chartrepo/(?P\w+)/charts/?$`) + deleteChartVersionRe = regexp.MustCompile(`^/api/chartrepo/(?P[^?#]+)/charts/(?P[^?#]+)/(?P[^?#]+)/?$`) + createChartVersionRe = regexp.MustCompile(`^/api/chartrepo/(?P[^?#]+)/charts/?$`) ) var ( diff --git a/src/core/middlewares/chart/handler_test.go b/src/core/middlewares/chart/handler_test.go index aedf1218e..217c1c70f 100644 --- a/src/core/middlewares/chart/handler_test.go +++ b/src/core/middlewares/chart/handler_test.go @@ -120,6 +120,21 @@ func (suite *HandlerSuite) TestUpload() { uploadChartVersion(projectID, projectName, "harbor", "0.2.0") suite.AssertResourceUsage(1, types.ResourceCount, projectID) }, "repo1") + + suite.WithProject(func(projectID int64, projectName string) { + uploadChartVersion(projectID, projectName, "harbor-ha", "dev") + suite.AssertResourceUsage(1, types.ResourceCount, projectID) + }, "harbor-contrib") + + suite.WithProject(func(projectID int64, projectName string) { + uploadChartVersion(projectID, projectName, "acs-engine-autoscaler", "1.0.0") + suite.AssertResourceUsage(1, types.ResourceCount, projectID) + }, "cluster-autoscaler") + + suite.WithProject(func(projectID int64, projectName string) { + uploadChartVersion(projectID, projectName, "123456", "1-0") + suite.AssertResourceUsage(1, types.ResourceCount, projectID) + }, "123456") } func (suite *HandlerSuite) TestDelete() { @@ -130,6 +145,30 @@ func (suite *HandlerSuite) TestDelete() { deleteChartVersion(projectName, "harbor", "0.2.1") suite.AssertResourceUsage(0, types.ResourceCount, projectID) }, "repo1") + + suite.WithProject(func(projectID int64, projectName string) { + uploadChartVersion(projectID, projectName, "harbor-ha", "dev") + suite.AssertResourceUsage(1, types.ResourceCount, projectID) + + deleteChartVersion(projectName, "harbor-ha", "dev") + suite.AssertResourceUsage(0, types.ResourceCount, projectID) + }, "harbor-contrib") + + suite.WithProject(func(projectID int64, projectName string) { + uploadChartVersion(projectID, projectName, "acs-engine-autoscaler", "1.0.0") + suite.AssertResourceUsage(1, types.ResourceCount, projectID) + + deleteChartVersion(projectName, "acs-engine-autoscaler", "1.0.0") + suite.AssertResourceUsage(0, types.ResourceCount, projectID) + }, "cluster-autoscaler") + + suite.WithProject(func(projectID int64, projectName string) { + uploadChartVersion(projectID, projectName, "123456", "1-0") + suite.AssertResourceUsage(1, types.ResourceCount, projectID) + + deleteChartVersion(projectName, "123456", "1-0") + suite.AssertResourceUsage(0, types.ResourceCount, projectID) + }, "123456") } func TestRunHandlerSuite(t *testing.T) {