Commit Graph

357 Commits

Author SHA1 Message Date
Wang Yan
948d45604c Revise the GC job flow,
1, set harbor to readonly
2, select the candidate artifacts from Harbor DB.
3, call registry API(--delete-untagged=false) to delete manifest bases on the results of #2
4, clean keys of redis DB of registry, clean artifact trash and untagged from DB.
5, roll back readonly.

Signed-off-by: wang yan <wangyan@vmware.com>
2020-02-24 18:29:55 +08:00
Wenkai Yin
bd204464f3 Remove dead code
Remove dead code

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-23 17:11:46 +08:00
He Weiwei
f36152a560
feat(vulnerability): assemble vulnerabilities info for artifact (#10800)
1. Assemble scan overview to artifact when scanner enabled in the
project of the artifact.
2. Set addition link for vulnerabilities to artifact when scanner
enabled in the project of the artifact.

Signed-off-by: He Weiwei <hweiwei@vmware.com>
2020-02-22 13:29:58 +08:00
Wenkai Yin
c4d4850845 Implement copy artifact API
Copy artifact into the repository from the specified artifact

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-20 16:59:35 +08:00
Wenkai Yin
1db0077096 Implement delete/update repository API
Implement delete/update repository API

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-20 08:39:26 +08:00
Wang Yan
384086c5ad
update the enum value for chart on api get the addition (#10752)
Signed-off-by: wang yan <wangyan@vmware.com>
2020-02-19 00:28:39 +08:00
Wenkai Yin
c8c944c6e8 Move the scan overview populating logic to API handler
Move the scan overview populating logic to API handler to avoid importing cycle

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-18 13:34:08 +08:00
Wenkai Yin(尹文开)
560dd8ce7b
Merge pull request #10745 from reasonerjt/artifact-signature-populate-v2
Artifact signature populate
2020-02-18 13:24:55 +08:00
Wenkai Yin(尹文开)
341cb88cba
Merge pull request #10727 from ywk253100/200214_bump_up_legacy_api_version
Bump up legacy api version to v2.0
2020-02-18 10:37:25 +08:00
Daniel Jiang
5a6e9331fd
Artifact signature populate (#7)
* Populate signature status in artifact API

This Commit add signature status into response of list artifact API.

Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2020-02-18 01:42:56 +08:00
Wenkai Yin(尹文开)
d7903fcf1b
Merge pull request #10682 from ywk253100/200126_label
Support add/remove label to/from artifact
2020-02-17 11:33:45 +08:00
Wenkai Yin
94787ea60d Bump up the version of legacy APIs to v2.0
Bump up the version of legacy APIs to v2.0

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-14 13:16:30 +08:00
AllForNothing
036ae18b25 Improve swagger.yaml
Signed-off-by: AllForNothing <sshijun@vmware.com>
2020-02-14 11:43:15 +08:00
Wenkai Yin
93731eeb2e Support add/remove label to/from artifact
This commit add supporting for adding/removing label to/from artifacts and populates labels when listing artifacts

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-13 10:46:23 +08:00
Wang Yan
e68b474dbc Merge pull request #10581 from ywk253100/100123_list_artifact
Add query string to listing artifact API to support specify only show the tagged artifacts
2020-02-10 18:12:06 +08:00
Wang Yan
65dc54b059 Merge pull request #10626 from ywk253100/200125_handle_error
Unify the method/style to handle error in handler/middleware
2020-02-10 17:47:12 +08:00
Wenkai Yin
0373e08e58 Add query string to listing artifact API to support specify only show the tagged artifacts
Specify the query string "tags=NOT_NULL" to the listing artifact API to only return the tagged artifacts

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-10 14:53:51 +08:00
Wenkai Yin
af4dd142bc Unify the method/style to handle error in handler/middleware
This commit provides a "SendError" method to unify the way to handle error in handlers/middlewares

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-08 07:37:00 +08:00
Wenkai Yin
0f6057a22c Implement get addition API for image
This commit implements the API to get build history of image with manifest version 2 and populates the addition links when listing/getting the artifact

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-07 20:21:38 +08:00
Wang Yan
6bad9f62ba
Merge pull request #10662 from ywk253100/200206_delete_repo
Implement repository deletion API
2020-02-07 17:51:03 +08:00
Wang Yan
5679c174c6
Merge pull request #10643 from ywk253100/200204_auth
Add permission check for artifact related APIs
2020-02-07 11:25:37 +08:00
Wenkai Yin
c267aaa474 Implement repository deletion API
Implement repository deletion API based on the new design

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-07 09:36:35 +08:00
Wang Yan
72f9e02dd9
Merge pull request #10628 from wy65701436/af-immu
set the immutable status on getting/listting tag
2020-02-05 21:03:29 +08:00
wang yan
596a6261ca set the immutable status on getting/listting tag
Signed-off-by: wang yan <wangyan@vmware.com>
2020-02-05 16:24:13 +08:00
Wenkai Yin
6087647895 Add permission check for artifact related APIs
Add permission check for artifact related APIs

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-05 15:58:39 +08:00
Wenkai Yin
7930e4f38a Add child artifact digest in reference model
As we only provide the API to get artifact information via project name, repository name and digest, the digest of child artifact must be returned

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-04 15:59:06 +08:00
Wenkai Yin
793b23a444 Implement artifact/tag related API
Implement APIs:
1. Get artifact
2. Delete artifact
3. Create tag
4. Delete tag

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-02-04 13:46:55 +08:00
Wenkai Yin
19f4bad042 Implement the listing artifact API
Implement the listing artifact API

Signed-off-by: Wenkai Yin <yinw@vmware.com>
2020-01-22 07:35:29 +08:00
He Weiwei
c729e3b9e0 feat(swagger): generate apis v2.0 from swagger.yaml
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2020-01-14 02:20:18 +00:00
wang yan
a0f3709b3c add expiration data time when to create a robot account
Update API of creating robot accout, user can specify expiration time per account.

Signed-off-by: wang yan <wangyan@vmware.com>
2020-01-03 13:47:06 +08:00
Wenkai Yin(尹文开)
c1522d3c36
Merge pull request #10261 from stonezdj/20191211_ldap_group_admin_dn
Fix admin permission not revoked when removed from LDAP admin group(Do Not Merge)
2019-12-24 14:37:28 +08:00
stonezdj
6313a55219 Fix admin permission not revoked when removed from LDAP admin group
Seperate the HasAdminRole(In DB) with the privileges from external auth, and use user.HasAdminPrivilege to check

Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-12-20 13:12:22 +08:00
Daniel Jiang
65ee14bb78 Fix syntax error in swagger.yaml
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-12-16 16:17:19 +08:00
Steven Zou
0cf3793297 doc[compatibility]:add doc ref in the README
- refer the harbor compatibility doc in the README
- add .md suffix to the README file under api/harbor

Signed-off-by: Steven Zou <szou@vmware.com>
2019-12-12 18:43:49 +08:00
Steven Zou
7bf9372f32 chore[api]:rename API folder to api
- update swagger yaml file reference in `Makefile`
- update swagger yaml file reference in `README`
- update swagger yaml file reference in `docs/configure_swagger.md`
- update swagger yaml file reference in `make/photon/portal/Dockerfile`
- update swagger yaml file reference in `tests/swaggerchecker.sh`

Signed-off-by: Steven Zou <szou@vmware.com>
2019-12-11 17:41:27 +08:00
Steven Zou
32b12181e2 doc[api spec]:rename folder name to
Signed-off-by: Steven Zou <szou@vmware.com>
2019-12-09 18:48:10 +08:00
yhua
311cf8da07 change code 20161019 2016-10-21 18:39:10 +08:00
yhua123
ac496e0991 Merge pull request #889 from wemeya/dev
modify log_test.go
2016-10-19 11:58:02 +08:00
Daniel Jiang
3b02134a5c Merge pull request #872 from ywk253100/161012_sync_repo
Do not show repo which has no tag in it
2016-10-17 15:40:27 +08:00
wemeya
95994cd392 modify log_test.go 2016-10-17 13:57:46 +08:00
kunw
9bf08f368c Extend password validation length. 2016-10-14 18:02:13 +08:00
Tan Jiang
7a8912d216 merge with master 2016-10-14 14:23:27 +08:00
Wenkai Yin
44ecac0b4a do not show repo which has no tag in it 2016-10-12 17:35:50 +08:00
Wenkai Yin
769c9c63f1 fix #856 2016-10-11 15:26:03 +08:00
Wenkai Yin
59559561d8 add sqlite support 2016-10-11 13:13:28 +08:00
Penghao Cen
3542c1b66c minor fix log print 2016-10-08 15:37:40 +08:00
wemeya
2a0951e2ea fix test case 2016-09-22 16:57:57 +08:00
wemeya
c0f3d7d749 add test case for user 2016-09-22 16:28:12 +08:00
yhua123
f11e9e8cd0 Merge pull request #813 from zgdxiaoxiao/api-test
add policy api test
2016-09-21 15:29:45 +08:00
Wenkai Yin
2a2a9feee2 fix #761 2016-09-19 17:58:29 +08:00
zgdxiaoxiao
8893f9121d add policy api test
update const data
2016-09-19 16:37:18 +08:00
Daniel Jiang
1c216d902a Merge pull request #804 from reasonerjt/dev
fix #801, add permission check before filtering access log of a project.
2016-09-14 16:05:10 +08:00
Daniel Jiang
e6b3638f9c Merge pull request #803 from ywk253100/buf_fix_filter_repo
bug fix: handle error when checking the existence of repos whose project does not exist in Harbor
2016-09-14 16:04:56 +08:00
Tan Jiang
e5c464f205 fix #801 2016-09-14 15:25:16 +08:00
Wenkai Yin
3f169e113d bug fix: handle error when checking the existence of repos whose project does not exist in Harbor 2016-09-14 15:12:16 +08:00
yhua123
6f5e82f915 Merge pull request #796 from zgdxiaoxiao/api-test
add target api test
2016-09-14 10:11:46 +08:00
Daniel Jiang
bbdf576962 Merge pull request #797 from reasonerjt/dev
Read from DB to refresh catalog cache
2016-09-13 18:51:10 +08:00
Wenkai Yin
343cc4f719 bug fix: delete multiple tags should not return error even though they reference the same image 2016-09-13 18:15:59 +08:00
Tan Jiang
f550fe6a56 Read from DB to refresh catalog cache 2016-09-13 16:13:07 +08:00
zgdxiaoxiao
f340b051d1 add target api test 2016-09-13 16:09:13 +08:00
zgdxiaoxiao
253c242535 add member delete test
add member delete API test

add member and repos test
2016-09-12 17:05:53 +08:00
Wenkai Yin
ce3c3fe8f1 1.search refactor due to storing repositories in database 2.bug fix: filter repositories in project view 2016-09-06 16:25:23 +08:00
Wenkai Yin
0fe8209ae1 the name can be same with others when creating and updating policies 2016-09-05 11:22:12 +08:00
Wenkai Yin
bcdec42346 Improve the performance of database when paginating large records for access logs, jobs and getting the top repositories 2016-09-02 18:35:31 +08:00
yhua123
3a3b4ccecb Merge pull request #750 from zgdxiaoxiao/api-dev
Update api test and swagger.yaml(updated version)
2016-09-02 17:19:53 +08:00
Wenkai Yin
bea2a034af 1.fix bugs in implements of storing repositories in DB 2.Complete project deletion 3.Refactor logic of listing the most favorate repositories 4.Refactor statistics 2016-09-02 16:24:25 +08:00
zgdxiaoxiao
198149599d update api test and swagger.yaml(updated) 2016-09-02 16:05:55 +08:00
Wenkai Yin
569e3aa32f Merge pull request #731 from wy65701436/dev
Add repo into DB, update code per comments
2016-09-01 10:33:50 +08:00
wemeya
44d3875a3f add test code for log and statistic api 2016-08-31 17:01:12 +08:00
zgdxiaoxiao
02d5281f0c project api test and bugfix
1.add project api test
2.bugfix:the type of public in project.go is fixed to int32
2016-08-30 18:26:41 +08:00
yhua
c69fffcca6 merge code 20160830 2016-08-30 13:59:30 +08:00
wy65701436
aba1a33f46 Add repo into DB, update code per comments 2016-08-29 06:21:49 -07:00
Wenkai Yin
c98a7ebd9d Merge branch 'project_deletion' into m_t 2016-08-29 15:26:41 +08:00
Wenkai Yin
a592ed1204 add pagination support for listing projects 2016-08-26 13:51:39 +08:00
Tan Jiang
78c807545d sync master 2016-08-24 13:54:31 +08:00
Wenkai Yin
c546c3a48b support project deletion 2016-08-23 15:56:30 +08:00
Daniel Jiang
2cb2175940 Merge pull request #682 from ywk253100/policy_deletion
Support policy deletion
2016-08-17 16:54:15 +08:00
Daniel Jiang
055a1438d4 Merge pull request #683 from yhua123/master
add new structs from swagger auto gen code
2016-08-15 16:43:17 +08:00
yhua
60cae7357f add new structs from swagger auto gen code 2016-08-15 14:36:42 +08:00
Wenkai Yin
4ef5c1f98a Merge master into dev
Conflicts:
	.travis.yml
	Dockerfile.job
	vendor/vendor.json
2016-08-15 11:30:06 +08:00
Wenkai Yin
ff348be048 1. support policy deletion 2. bug fix: missing semicolon in js 2016-08-12 17:59:25 +08:00
Daniel Jiang
361f6bd393 Merge pull request #679 from ywk253100/master_d
bug fix: check whether project is nil befere reading its properties
2016-08-12 14:39:27 +08:00
Daniel Jiang
13b859f58b Merge pull request #673 from ywk253100/dev_ut
add UT for package utils
2016-08-12 14:38:42 +08:00
Daniel Jiang
71716ef06d fixes #658 2016-08-11 21:38:15 +08:00
Wenkai Yin
3d909bd0bd add UT for package utils 2016-08-11 17:58:17 +08:00
Wenkai Yin
98e399c8fe bug fix: check whether project is nil befere reading its properties 2016-08-11 14:11:45 +08:00
Tan Jiang
c683be1c64 merge with master 2016-08-10 15:34:23 +08:00
yhua
74702a0be7 add api testing framework 2016-08-10 14:34:56 +08:00
Wenkai Yin
5079a8d20c sys admin can not delete himself 2016-08-08 12:42:30 +08:00
Daniel Jiang
4fc9373fec Merge pull request #618 from ywk253100/security_check_on_jobservice
add security check on job service
2016-08-05 14:53:38 +08:00
Wenkai Yin
c4081f9aa3 add security check on job service
update
2016-08-05 13:00:24 +08:00
Tan Jiang
318d10186e Use AES to encrypt password for target 2016-08-04 11:35:52 +08:00
Tan Jiang
fa18ab3a75 merge with master 2016-08-03 17:15:00 +08:00
Wenkai Yin
cf953f74fe return more information when calling get mannifest API
Conflicts:
	api/repository.go
2016-08-02 10:53:53 +08:00
Wenkai Yin
3b827e36f5 support pagination for listing repositories, jobs and access logs
update
2016-08-01 17:54:12 +08:00
Wenkai Yin
82af69d9f6 fix #591 2016-07-31 20:21:19 +08:00
yhua
d746bfc9f2 add *_empty_test.go for actual go test coverage 2016-07-29 18:39:29 +08:00
Daniel Jiang
cf23b067a6 Merge pull request #565 from reasonerjt/master
handle DB error to return 409 when creating project
2016-07-19 15:14:08 +08:00
Tan Jiang
236a54f9bd handle DB error to return 409 when creating project 2016-07-19 13:35:39 +08:00
Wenkai Yin
befc22f3f7 fix #561 2016-07-18 20:37:52 +08:00