Wenkai Yin
e8fe2aa60c
Upgrade the registry and replication policy tables
...
Upgrade the registry and replication tables in database
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-04-05 13:25:00 +08:00
Wenkai Yin
4116433de8
Merge pull request #7306 from ywk253100/190404_cleanup
...
Remove the useless replication code
2019-04-04 21:18:04 +08:00
Wenkai Yin
c2f702be2a
Remove the useless replication code
...
This commit removes the useless replication code
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-04-04 20:56:25 +08:00
Wenkai Yin
b66b1f341e
Merge remote-tracking branch 'upstream/master' into 190404_sync
2019-04-04 14:55:09 +08:00
Yan
da0e20ec60
Add controller to onboard oidc user ( #7286 )
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-04-03 20:47:22 +08:00
wang yan
dcf1d704e6
fix dao UT issue and refine the error of onboard OIDC user
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-04-03 14:05:18 +08:00
wang yan
41018041f7
remove oidc controller and add more UTs
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-04-03 09:54:21 +08:00
Yan
0de5999f52
add the controller for ocdi onboard user
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-04-03 09:52:22 +08:00
Wenkai Yin
74efee569e
Update the registry client to support pulling public images from docker hub without login
...
Only add the authentication info when the username is provided to support pulling public images from docker hub without login
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-04-01 19:15:07 +08:00
Daniel Jiang
587acd33ad
Add callback controller for OIDC
...
This commit add callback controller to handle the redirection from
successful OIDC authentication.
For E2E case this requires callback controller to kick off onboard
process, which will be covered in subsequent commits.
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-04-01 12:35:31 +08:00
Wenkai Yin
8c7b63bac2
Merge pull request #7248 from ywk253100/190326_event
...
Add event based trigger and scheduled trigger
2019-03-29 14:58:09 +08:00
Wenkai Yin
4f8e283e8e
Add event based trigger and scheduled trigger
...
This commit implements the event based trigger and scheduled trigger in replilcation
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-03-29 13:48:34 +08:00
Daniel Jiang
9ce98f4acd
Add controller to handle oidc login
...
The controller will redirect user to the OIDC login page based on
configuration.
Additionally this commit add some basic code to wrap `oauth2` package
and `provider` in `go-oidc`, and fixed an issue in UT to make
InMemoryDriver for config management thread-safe.
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-03-28 11:29:05 +08:00
Yan
03709e4ec1
add authn proxy ( #7199 )
...
* add authn proxy docker login support
User could use the web hook token issued by k8s api server to login to harbor.
The username should add a specific prefix.
Signed-off-by: wang yan <wangyan@vmware.com>
* update code per review comments
Signed-off-by: wang yan <wangyan@vmware.com>
* Add UT for auth proxy modifier
Signed-off-by: wang yan <wangyan@vmware.com>
2019-03-27 12:37:54 +08:00
Wenkai Yin
017bba8dc1
Merge remote-tracking branch 'upstream/master' into 190327_sync
2019-03-27 11:43:51 +08:00
Daniel Jiang
49aae76205
Onbard settings for OIDC provider ( #7204 )
...
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-03-25 12:24:39 +08:00
Yan
8d3946a0e2
Refactor scan all api ( #7120 )
...
* Refactor scan all api
This commit is to let scan all api using admin job to handle schedule
management. After the PR, GC and scan all share unified code path.
Signed-off-by: wang yan <wangyan@vmware.com>
* update admin job api code according to review comments
Signed-off-by: wang yan <wangyan@vmware.com>
* Update test code and comments per review
Signed-off-by: wang yan <wangyan@vmware.com>
2019-03-22 17:52:21 +08:00
Wenkai Yin
49cf50adb1
Merge remote-tracking branch 'upstream/master' into 190324_sync
...
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-03-22 15:55:52 +08:00
Meina Zhou
130e132f86
Merge branch 'master' into replication_ng
...
Signed-off-by: Meina Zhou <meinaz@vmware.com>
2019-03-21 14:16:33 +08:00
He Weiwei
79235fffd1
Fix pagination for users and users search apis
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-03-21 13:03:30 +08:00
Wenkai Yin
fb394c2c7a
Replicate helm charts
...
This commit provides the capability for Harbor to replicate helm charts
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-03-20 00:35:15 +08:00
stonezdj(Daojun Zhang)
7060747d5b
ldap_url and ldap_base_dn not exist in user config ( #7115 )
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-03-15 15:20:12 +08:00
wang yan
73d68903d6
update robot account return attribute
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-03-14 13:57:50 +08:00
Wenkai Yin
258b22a9a5
Fix bug in replication
...
This commit fixes bugs found in the implement of replciation NG
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-03-10 20:57:59 +08:00
Wenkai Yin
cabef73980
Add Harbor adapter for replication
...
Implement the replication adapter for Harbor registry
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-03-13 21:39:39 +08:00
peimingming
4efad287ce
Add execution and hooks
...
Signed-off-by: peimingming <peimingming@corp.netease.com>
2019-03-13 09:35:01 +08:00
Wenkai Yin
772367498f
Merge remote-tracking branch 'upstream/master' into 190311_sync
2019-03-11 20:34:49 +08:00
Frank Kung
5bd5d59a4f
1. Define ng persist replication policy model.
...
2. Add ng replication policy CURD methods.
3. Implement ng policy manger.
Signed-off-by: Frank Kung <kfanjian@gmail.com>
Signed-off-by: 慕薇疯魔 <kfanjian@gmail.com>
2019-03-11 11:13:10 +08:00
Wenkai Yin
ec2a7f9239
Implement replication operation API
...
This commit implements the replication operation related APIs
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-03-08 10:06:33 +08:00
stonezdj(Daojun Zhang)
f7745baf30
Merge pull request #6599 from stonezdj/pr6161
...
Add new parameter ldap_group_membership_attribute (PR#6161)
2019-03-07 13:26:26 +08:00
De Chen
2bc2a44db8
Merge branch 'replication_ng' into registries-management
2019-03-05 16:22:34 +08:00
cd1989
b00098d492
Add unit tests and fix CI
...
Signed-off-by: cd1989 <chende@caicloud.io>
2019-03-05 15:37:36 +08:00
stonezdj
4dfee0c1f0
Remove verify_remote_cert
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-03-05 14:04:10 +08:00
stonezdj
cf134bc80e
Add new parameter ldap_group_membership_attribute
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-03-03 10:03:22 +08:00
Daniel Jiang
321874c815
Move Settings of HTTP auth proxy ( #7047 )
...
Previously the settings of HTTP authproxy were set in environment
variable.
This commit move them to the configuration API
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-03-01 14:11:14 +08:00
cd1989
8732a20709
Rewrite registry manager with new interface
...
Signed-off-by: cd1989 <chende@caicloud.io>
2019-02-27 11:54:04 +08:00
cd1989
6bdf3053a7
Implement registries manager
...
Signed-off-by: cd1989 <chende@caicloud.io>
2019-02-27 11:54:04 +08:00
Wenkai Yin
95888b3dc2
Merge branch 'replication_ng' into 190130_transfer_repo
2019-02-27 11:00:42 +08:00
wang yan
91aa67a541
Update expiration variable name to expiresat/tokenduration
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-02-25 11:55:42 +08:00
wang yan
36a778b482
Update expiration schema to bigint and default unit to minute
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-02-22 18:42:43 +08:00
wang yan
47a09b5891
add expiration of robot account
...
This commit is to make the expiration of robot account configurable
1, The expiration could be set by system admin in the configuation page or
by /api/config with robot_token_expiration=60, the default value is 30 days.
2, The expiration could be shown in the robot account infor both on UI and API.
Signed-off-by: wang yan <wangyan@vmware.com>
2019-02-22 18:42:34 +08:00
stonezdj(Daojun Zhang)
4cb49e5388
Merge pull request #6963 from stonezdj/remove_container
...
Remove everything of adminserver container
2019-02-22 18:27:43 +08:00
stonezdj
0cba36d79f
Remove everything of adminserver
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-02-22 16:34:39 +08:00
Nguyen Quang Huy
eda6c47b3e
add signoff for DCO gate ( #6981 )
...
Some variable name, function name is colliding with builtin function.
Signed-off-by: Nguyen Quang Huy <huynq0911@gmail.com>
2019-02-22 15:00:18 +08:00
Daniel Jiang
321adc8362
Merge pull request #6941 from ywk253100/190213_replication_policy
...
Fix #6698 : cannot create a same name replication policy after deleting it
2019-02-21 16:03:55 +08:00
stonezdj
7a5fbf718f
Revise code with review comments
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-02-18 15:20:54 +08:00
stonezdj
36e1c13a43
fix ut error in systeminfo_test.go
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-02-18 14:06:19 +08:00
stonezdj
1ae5126bb4
Refactor adminserver stage 3: replace config api and change ut settings
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2019-02-18 14:06:19 +08:00
Wenkai Yin
f0f2e77fb4
Implement the repository transfer
...
This commit implements the Transfer interface for resource repository
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-02-15 17:49:35 +08:00
Wenkai Yin
530ba1d27b
Fix #6698
...
This commit fixes the issue #6698 : cannot create a same name replication policy after deleting it
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-02-15 15:17:48 +08:00
Daniel Jiang
81639e2110
Merge pull request #6865 from wy65701436/remove-token
...
Remove the token attribute from robot table
2019-02-13 19:23:06 +08:00
Yan
e9556a4cec
Add post response for robot account API ( #6906 )
...
This commit is to do:
1, Add post response on creating robot account
2, Lower-case the attribute of response
Signed-off-by: wang yan <wangyan@vmware.com>
2019-02-13 14:40:04 +08:00
He Weiwei
1c4b9aa346
Protect API using rbac
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-02-01 18:55:06 +08:00
wang yan
5d6a28d73e
Remove the token attribute for robot table
...
This commit is to remove the token attribute as harbor doesn't store the token in DB.
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-30 23:56:23 +08:00
wang yan
f4f4535304
Fix action and resouce of RBAC change
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-29 17:05:15 +08:00
Daniel Jiang
bf663df0e7
Merge pull request #6820 from wy65701436/robot-service
...
Add robot account authn & authz implementation
2019-01-29 16:08:25 +08:00
He Weiwei
6e95b98108
Standard actions for rbac
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-29 11:59:11 +08:00
He Weiwei
1da0a66fe5
Merge pull request #6781 from heww/user-permissions-api
...
Implement api for get current user permissions
2019-01-29 01:58:51 +08:00
He Weiwei
0ab7c93e16
Replace casbin builtin keyMatch2 with custom match func
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-29 01:26:38 +08:00
wang yan
2d7ea9c383
update codes per review comments
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-28 21:26:06 +08:00
He Weiwei
8b5e68073d
Implement api for get current user permissions
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-28 18:06:52 +08:00
Yan
71f37fb820
* Add robot account authn & authz implementation.
...
This commit is to add the jwt token service, and do the authn & authz for robot account.
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-28 17:39:57 +08:00
Daniel Jiang
20db0e737b
Provide HTTP authenticator
...
An HTTP authenticator verifies the credentials by sending a POST request
to an HTTP endpoint. After successful authentication he will be
onboarded to Harbor's local DB and assigned a role in a project.
This commit provides the initial implementation.
Currently one limitation is that we don't have clear definition about
how we would "search" a user via this HTTP authenticator, a flag for
"alway onboard" is provided to skip the search, otherwise, a user has
to login first before he can be assigned a role in Harbor.
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-01-28 15:43:44 +08:00
He Weiwei
3f8e06a8bc
Support master role for project member create and update apis ( #6780 )
...
* Support master role for project member create and update apis
Signed-off-by: He Weiwei <hweiwei@vmware.com>
* Fix description for role_id in swagger.yaml
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-23 14:56:23 +08:00
He Weiwei
ae061482ae
Add Can method to securty.Context interface ( #6779 )
...
* Add Can method to securty.Context interface
Signed-off-by: He Weiwei <hweiwei@vmware.com>
* Improve mockSecurityContext Can method
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-23 14:32:37 +08:00
wang yan
903e15235e
Update validation and error message per comments
2019-01-17 15:33:05 +08:00
wang yan
4cde11892a
update the conflict check with DB unique constrain error message
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-17 13:13:55 +08:00
Yan
1af0f3c3b9
Add API implementation of robot account
...
Add API implementation of robot account
1. POST /api/project/pid/robots
2, GET /api/project/pid/robots/id?
3, PUT /api/project/pid/robots/id
4, DELETE /api/project/pid/robots/id
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-17 13:13:55 +08:00
He Weiwei
8dab10bbed
Merge pull request #6765 from heww/rename-ram
...
Rename ram to rbac
2019-01-17 11:50:14 +08:00
He Weiwei
bacfe64979
Rename ram to rbac
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-16 18:20:30 +08:00
Wenkai Yin
f8d9653419
Merge pull request #6737 from ywk253100/190109_health_check
...
Implement the unified health check API
2019-01-16 18:14:14 +08:00
He Weiwei
76bee7a9fc
Merge pull request #6710 from heww/security-by-ram
...
Implement current security interfaces using ram
2019-01-16 17:47:13 +08:00
Wenkai Yin
be4455ec1b
Implement the unified health check API
...
The commit implements an unified health check API for all Harbor services
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2019-01-16 17:21:04 +08:00
He Weiwei
ebd26c0105
Implement current security interfaces using ram
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-16 16:08:17 +08:00
Steven Zou
464bdf71cd
Merge pull request #6727 from wy65701436/robot-dao
...
Add dao of robot account
2019-01-14 19:34:23 +08:00
wang yan
d349c256e8
add support for query nil
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-11 16:19:42 +08:00
Daniel Jiang
a1d4bfd332
Merge pull request #6344 from reasonerjt/bump-up-golang
...
Bump up golang to 1.11.2
2019-01-11 16:15:59 +08:00
Daniel Jiang
5d59d6fab8
Bump up golang to 1.11.2
...
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2019-01-11 14:44:32 +08:00
wang yan
6bd6fbd4ad
Add fuzzy match and delete funt per review comments
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-11 14:26:49 +08:00
wang yan
c6ae1388ec
Add dao of robot account
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-10 14:51:33 +08:00
Daniel Jiang
80af81154c
Merge pull request #6702 from wy65701436/robot-db-scheme
...
Add DB table for robot account
2019-01-10 14:25:58 +08:00
wang yan
db09f9f101
Update token length and upper case the sql key words
...
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-09 10:00:54 +08:00
wang yan
362a0638d0
Add DB table for robot account
...
This commit is to add DB scheme for robot account and update the db orm releated.
Signed-off-by: wang yan <wangyan@vmware.com>
2019-01-08 18:46:16 +08:00
Daniel Jiang
b5788f0695
Merge pull request #6671 from heww/ram
...
Add ram pkg
2019-01-08 15:39:36 +08:00
He Weiwei
79f786ecbe
Add ram pkg
...
Signed-off-by: He Weiwei <hweiwei@vmware.com>
2019-01-04 13:17:13 +08:00
Wenkai Yin
75d45ebd9d
Merge pull request #6547 from cd1989/retag-input-validation
...
Validate repo and tag names in retag
2019-01-03 17:45:44 +08:00
cd1989
c117a23133
Validate repo and tag names in retag
...
Signed-off-by: cd1989 <chende@caicloud.io>
2018-12-24 16:49:39 +08:00
Daniel Jiang
93c0a18b06
Merge pull request #6537 from stonezdj/ref_admin_driver
...
Refactor config settings stage2
2018-12-21 15:12:56 +08:00
stonezdj
2446878f6b
Refactor config settings stage2
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2018-12-21 10:59:11 +08:00
Wenkai Yin
b28bca7af4
Merge pull request #6541 from salkin/proxy-transport
...
Add support for http proxy in transport
2018-12-18 15:46:29 +08:00
Niklas Wik
138bc69f0f
Add support for http proxy in transport
...
Signed-off-by: Niklas Wik <niklas.wik@nokia.com>
2018-12-17 10:35:27 +02:00
stonezdj(Daojun Zhang)
13511d74ed
Refactor config settings encrypt + metadata ( #6387 )
...
Signed-off-by: stonezdj <stonezdj@gmail.com>
2018-12-12 12:14:33 +08:00
Wenkai Yin
f7a28ee2a2
Remove the duplicate http error struct ( #6516 )
...
There are two different types to represent http error in the current code. This commit updates the codes to keep only one.
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2018-12-12 11:51:19 +08:00
cd1989
caf07a96fe
Give meaningful messages when retag forbided
...
Signed-off-by: cd1989 <chende@caicloud.io>
2018-12-06 16:25:21 +08:00
Daniel Jiang
ae240df031
Remove the Scan all in-memory marker ( #6399 )
...
Previously there was a in-memory marker to prevent user from frequently
calling the "scan all" API. This has become problematic in HA
deployment, and is no longer needed after enhancement in jobservice.
This commit removes the marker for "scan all" api, however, we need to
review the mechanism and rework to make it stateless.
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2018-12-02 15:40:50 +08:00
Steven Zou
ec2ad4d0b8
Merge pull request #6093 from cd1989/replication-record-id
...
Add op uuid to image replication
2018-11-30 14:54:43 +08:00
Wenkai Yin
9d5cf57373
Check the existence of name when creating replication rule and fix bugs in testing library ( #6381 )
...
1. Fix #5102 by checking the existence of name when creating/editing replication rule
2. Add unique constraint to the name of replication policy and target
3. Fix bugs of testing library
Signed-off-by: Wenkai Yin <yinw@vmware.com>
2018-11-30 13:32:20 +08:00
peimingming
238dbc0347
Add UT and review comments and issue fix ( #6144 )
...
Signed-off-by: peimingming <peimingming@corp.netease.com>
2018-11-28 17:43:14 +08:00
peimingming
c67fdc40f5
Support store job log in DB ( #6144 )
...
Signed-off-by: peimingming <peimingming@corp.netease.com>
2018-11-28 15:09:29 +08:00
Steven Zou
e6d4c024ee
Update README of job service to reflect latest updates
...
Signed-off-by: Steven Zou <szou@vmware.com>
2018-11-08 10:35:12 +08:00