Daniel Jiang
dcf4e2ee78
Update import path in go code
...
vmware -> goharbor
Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2018-08-23 17:50:53 +08:00
silenceshell
7745b79b2e
var name should not be error ( #5332 )
...
Rename the variable names from "error" to "err"
2018-07-24 11:33:21 +08:00
Yan
efdb57548f
add admin job api ( #5344 )
...
It supports Harbor admin to trigger job either manual or
schedule. The job will be populated to job service to execute.
The api includes:
1. POST /api/system/gc
2, GET /api/system/gc/:id
3, GET /api/system/gc/:id/log
4, PUT/GET/POST /api/system/gc/schedule
2018-07-20 19:22:37 +08:00
Daniel Jiang
0d6ea995e1
Let adminserver initialise the DB schema.
...
This commit make update to remove the code from ui container to init the
DB schema. As UI has dependency on admin server, so it's safe to assume
adminserver has to be ready first. Regardless the setting of the config
store of admin server, it will try to access and intialize the schema of
database.
2018-07-13 17:32:17 +08:00
Deng, Qian
edbe2fe620
Update migrator to 1 6 0
...
1. Add new alembic_pg folder for postgres
2. Add migration file for 1.6.0
3. Update version to 1.6.0
4. update migrator dockerfile
2018-07-02 21:23:47 +08:00
Daniel Jiang
c9b1962b1e
Initialise Harbor DB schema in Harbor UI/adminserver container
...
This commit fixes #5040 , the harbor-db image will only contain empty
databases, and harbor ui container will use migrate tool to run initial
SQL scripts to do initialization. This is helpful for the case to
configure Harbor against external DB or DBaaS like RDS for HA deployment
However, this change will results some confusion as there are two tables
to track schema versions have been using alembic for migration, for this
release we'll try to use alembic to mock a `migration` table during
upgrade so the migrator will be bypassed, in future we'll consider to
consolidate to the golang based migrator.
Another issue is that the UI and adminserver containers will access DB
after start up in different congurations, can't ensure the sequence, so
both of them will try to update the schema when started up.
2018-06-28 16:22:53 +08:00
Daniel Jiang
255a6d6f95
Merge pull request #5070 from ywk253100/180601_label_fuzzy_match
...
Fix #4742 : fuzzy match label name
2018-06-12 14:39:35 +08:00
Wenkai Yin 79628
0c56493fb6
Soft delete label
...
Modify the deletion of label to soft deletion, in this way the names of deleted labels referenced by replication rules can be shown to users
2018-06-07 17:14:12 +08:00
Wenkai Yin 79628
07c092c9be
Fix #4742
...
This commit provides the support of fuzzy matching for label name when listing labels
2018-06-01 07:38:21 +08:00
Wenkai Yin 79628
76274dbf84
Update change password API
...
Modify the changing password API to support that admin user can change the password of normal users without old password
2018-05-22 19:02:20 +08:00
stone
d3930ae17c
Put user info into session ( #4885 )
...
Fix the following issues.
1) GroupList is not found in SecurityContext user info
2) Retrieve multiple memberof information from LDAP.
3) If user is in two groups with guest, administrator role separately, display the max privilege role.
2018-05-17 16:23:51 +08:00
stonezdj
b8a48d0326
Update security context for assign role to project group member
...
The project list will contain all public projects, user is a member of this project, or user is in the group which is a member of this projects.
Change the behaviour of user roles, if the user is not a member of this project, then return the user's groups role of current project
2018-05-03 16:49:16 +08:00
Yan
ae257433cc
Fully migrate harbor db to postgresql ( #4689 )
...
* Merge harbor db to postgres
2018-04-27 02:27:12 -07:00
Wenkai Yin
f77e4167ac
Merge pull request #4802 from ywk253100/180427_label_db
...
Modify unique constraint of table harbor_label
2018-04-27 17:10:05 +08:00
Wenkai Yin
73babbf1ab
Modify unique constraint of table harbor_label
...
Add unique constraint to column name, scope and project_id of table harbor_label to make creating same name labels under different projects valid
2017-12-19 22:15:56 +08:00
Tan Jiang
7fa8261661
Fix intermittent broken pipe
issue in log
...
This commit fixes #4713 , by adopting the suggested fix in:
https://github.com/go-sql-driver/mysql/issues/529
When creating the DB instance in orm, call `SetConnMaxLifetime()`
2018-04-18 17:39:13 +08:00
stonezdj
7e57c685ac
Add project member search by name
...
Previous implementation contains the search user by name feature. This implementation can search user and user group by name.
2018-04-16 18:38:10 +08:00
stonezdj
de49165427
Refactor project member API
...
1) Remove the previous /api/projects/?:project_id/members/:userid
2) Move the /api/projects/:project_id/projectmembers/?:pmid to
/api/projects/:project_id/members/?:pmid
3) Change the project member maintain ui to call new REST API
2018-04-11 17:49:33 +08:00
stone
df63a73fd4
Merge pull request #4483 from stonezdj/api4assign_role_to_group4
...
Add REST API for assign role to group
2018-04-04 16:19:37 +08:00
stonezdj
9bcfaedc0e
Add REST API for assign role to group
2018-04-04 13:39:42 +08:00
Wenkai Yin
500651a5a1
Hide schedule job when listing replication jobs
2018-04-03 01:11:55 +08:00
Wenkai Yin
3436729d52
Merge pull request #4547 from ywk253100/180328_schedule_replication_job
...
Move schedule replication job to new jobservice
2018-03-30 21:03:45 +08:00
Wenkai Yin
dd40f187ec
Move schedule replication job to new jobservice
2018-03-30 17:44:05 +08:00
Steven Zou
d1899c840d
Merge branch 'master' into job_service
2018-03-29 23:25:20 +08:00
Daniel Jiang
2c2cbd9c52
Merge pull request #4510 from reasonerjt/master
...
Add indexes to job tables and bump up schema version.
2018-03-28 16:58:16 +08:00
Tan Jiang
b6df6cf169
Add indexes to job tables and bump up schema version.
2018-03-28 16:15:54 +08:00
Tan Jiang
c859616e25
fix golint and go vet issue
2018-03-26 22:10:01 +08:00
Tan Jiang
41ce0891ab
Trigger scan job from UI.
2018-03-26 18:07:21 +08:00
stonezdj
49d960b060
Add DAO for project member and user group
2018-03-26 14:38:32 +08:00
Wenkai Yin
85f357ec6b
Delete the mapping relationship between resources and labels when the label is deleted
2018-03-24 02:22:51 +08:00
Wenkai Yin
c6e65d2ded
Fuzzy matching repository name in GET repositories API
2018-03-22 13:38:26 +08:00
Wenkai Yin
838b439560
Implement filter repository and tags by label API
2018-03-21 10:51:06 +08:00
Wenkai Yin
36b9c4e458
Implement adding/removing labels to/from repositories and images API
2018-03-12 19:30:05 +08:00
Wenkai Yin
379f113452
Implement label management API
2018-03-09 12:17:27 +08:00
stonezdj
4c6d1488bd
Add UT
2018-02-09 15:29:08 +08:00
stonezdj
f138067242
Refactor project member
2018-02-09 10:38:51 +08:00
Wenkai Yin
10f56d26fe
Change codes to make everything OK after upgrading to beego 1.9.0
2018-02-05 13:07:52 +08:00
Wenkai Yin
611709a7be
Add pagination support in listing replication policy API
2018-01-18 15:54:12 +08:00
Qian Deng
5017670d00
Merge pull request #4005 from ninjadq/db_migrate_from_1_3_to_1_4
...
Update migration tool for v1.4
2018-01-16 17:04:54 +08:00
Deng, Qian
b3e65ed71e
Update migration tool for v1.4
...
1. Update database meta file
2. Add migration file for 1.4
2018-01-16 15:38:51 +08:00
Wenkai Yin
a1dd8c3bff
Merge pull request #4004 from ywk253100/180111_jobservice
...
Provide a mechanism to stop pending and retrying jobs
2018-01-15 12:55:44 +08:00
Tan Jiang
d6bf0ea11d
Remove data generated by dao_test after the test.
2018-01-12 15:56:30 +08:00
Wenkai Yin
4070ed5152
Provide a mechanism to stop pending and retrying jobs
2018-01-12 15:29:20 +08:00
Tan Jiang
a392a8dc29
Provide API to rename admin
...
This is to provide a workaround for very corner case that in user's
authentication backend (LDAP, UAA) has a user called "admin" and because
Harbor's super user is hard coded to "admin" it's not possible to login
the "admin" with credentials in LDAP or UAA.
To minimize the impact, we'll provide an internal API for user to update
the super user's username from "admin" to "admin@harbor.local", this API
can be called by "admin" only, and is not reversible.
2018-01-11 23:01:06 +08:00
Wenkai Yin
e26b442c9c
Merge pull request #3951 from ywk253100/180104_replicate_interval
...
Manual starting replication will be rejected if there are pending/running jobs
2018-01-10 10:56:45 +08:00
Daniel Jiang
f8af1f275e
Merge pull request #3911 from stonezdj/ldap_search_level
...
Ambiguous UI and internal values ldap_scope
2018-01-08 14:53:55 +08:00
Wenkai Yin
87ce1c84d5
Manual starting replication will be rejected if there are pending/running jobs
2018-01-05 17:05:57 +08:00
stonezdj
26b86984d2
Ambiguous UI and internal values ldap_scope #3764
2018-01-05 15:51:37 +08:00
pfh
13308ce9d8
Merge remote-tracking branch 'upstream/master' into repEnhance
2018-01-05 14:09:03 +08:00
Wenkai Yin
96a63c56b1
Merge remote-tracking branch 'upstream/master' into 180103_merge
2018-01-03 10:32:03 +08:00
Wenkai Yin
a9d7403bee
Update project ID property if needed when updating replication policy
2017-12-27 15:04:26 +08:00
stonezdj
35716dedd3
Sync user email in ldap #3663
2017-12-26 18:53:32 +08:00
Daniel Jiang
94c78b3bee
Merge pull request #3858 from xuri/master
...
Simple code and typo fixed.
2017-12-26 12:06:27 +08:00
Tan Jiang
da20e4f11c
Search UAA when adding member to a project.
...
1)Enable UAA client to search UAA by calling '/Users' API.
2)Implement 'SearchUser' in UAA auth helper, register it to auth
package.
2017-12-26 00:25:32 +08:00
Ri Xu
9adccd3723
Simple code and typo fixed.
...
Signed-off-by: Ri Xu <xuri.me@gmail.com>
2017-12-23 20:55:07 +08:00
yixingj
f63588855f
Make Clair DB configurable
...
Make the HOST,PORT,USERNAME,DB configurable for
Clair
2017-12-20 18:29:50 +08:00
Wenkai Yin
8d62d989a5
Fix bug #4791
...
Remove the table join when querying repositories with project name
2017-12-19 21:47:39 +08:00
Daniel Jiang
62cebbdb5d
Merge pull request #3797 from reasonerjt/uaa-restriction
...
Disable user management features when auth mode is UAA.
2017-12-18 22:47:08 +08:00
Tan Jiang
224f75b9a6
Refactor /users API, add more restircation in password reset
...
Simplified the code when checking if a user is modiable in different
auth modes.
Also add restriction in password, such that when the auth mode is not DB
auth, only the super user can choose to reset his password.
2017-12-18 14:32:29 +08:00
Wenkai Yin
b5e7de331e
Delete enabled and start_time properties of replication rule
2017-12-15 09:40:31 +08:00
Wenkai Yin
a54b7dd4c0
Merge remote-tracking branch 'upstream/master' into 171219_merge
2017-12-15 08:48:57 +08:00
Wenkai Yin
43489c2b67
Print stack trace when recover from panic and print warning message rather than returning an error when updating 0 records
2017-12-14 13:48:45 +08:00
Wenkai Yin
665a54edc3
Merge remote-tracking branch 'upstream/master' into 171213_merge
2017-12-13 13:40:24 +08:00
yixingj
9b03c93afd
Add database driver for Harbor configurations
...
1>Add a new database driver for configurations
2> change the current default driver from json
to database
2017-12-06 13:06:54 +08:00
Wenkai Yin
6b0ee138e5
Implement immediate trigger and the methods of WatchList
2017-11-27 14:23:21 +08:00
Wenkai Yin
31cf6c078e
Implement replication policy manager
2017-11-16 10:55:03 +08:00
Wenkai Yin
149b628292
update
2017-11-09 16:20:56 +08:00
Wenkai Yin
5cef58baa1
update according to the comments
2017-11-08 17:53:41 +08:00
Wenkai Yin
5293a9287b
Fail earlier when found database schema dismatch
2017-11-07 13:07:56 +08:00
Wenkai Yin
51d5df0849
Update replication policy API to support trigger and filter
2017-11-02 14:59:26 +08:00
Wenkai Yin
0ddca31355
Add column id to table project_metadagta as the primary key
2017-10-30 17:37:25 +08:00
Wenkai Yin
2156750b04
Move certificate verification to target level
...
The certificate verification is on system level before this commit. Moving it
to target level makes the configuration more flexible for different targets.
2017-10-20 15:36:56 +08:00
Wenkai Yin
66b2d0d3f3
Apply project level policies to standalone Harbor
...
The following features are only enabled in integration mode, this commit moves
these to standalone Harbor:
- Content trust policy: only signed images can be pulled
- Vulnerability policy: only images whose severity is below the threshold can be pulled
- Automatic scan policy: automatic scan pushed images
2017-10-19 17:33:28 +08:00
Tan Jiang
51286d9baa
Provide UAA authenticator for password based authentication.
2017-10-07 00:16:53 +08:00
Wenkai Yin
e495357d98
implement the default project metadata manager
2017-09-28 16:17:51 +08:00
Wenkai Yin
f0946b63cf
fix code style issues reported by golint
2017-09-19 17:16:54 +08:00
Wenkai Yin
7296bdc131
increase length of username in database to 256
2017-08-17 15:24:34 +08:00
Tan Jiang
2ffcf10eaa
restart scan jobs when jobservice is started
2017-08-16 17:24:41 +08:00
Tan Jiang
882683ae6f
Do not throw error if the scan result is unchanged
2017-08-10 17:26:39 +08:00
wangyan
657d3c322f
fix issue 2975
...
udpate
update
update
update
update
update
2017-08-07 18:01:37 +08:00
wangyan
5b54b554ab
update
2017-08-04 18:59:16 +08:00
wangyan
bcc1a5c41d
fix 2965
...
update package
update
2017-08-04 18:44:00 +08:00
Tan Jiang
10c8573464
provide API for scanning images under a projet
2017-07-26 15:19:17 +08:00
Tan Jiang
629cf29850
The password to access clair db can be configured in harbor.cfg, skip auto-scan if clair-db is not ready
2017-07-17 15:25:47 +08:00
Daniel Jiang
ca6bd3b585
Merge pull request #2741 from reasonerjt/fetch-timestamp-from-clairdb
...
read last update from clair db, return in system info
2017-07-12 17:16:30 +08:00
Tan Jiang
5f233f3e21
address comment
2017-07-12 15:05:27 +08:00
Tan Jiang
543cf62e14
read last update from clair db, return in system info
2017-07-11 21:26:31 +08:00
Wenkai Yin
0de64ed139
bug fix
2017-07-10 18:38:21 +08:00
Tan Jiang
e1e975096c
add int id for scan overview and revoke the change in beego
2017-07-09 12:37:08 +08:00
Tan Jiang
ca805759d9
update scan overview in notification handler, and return clair vuln timestamp in system info
2017-07-07 17:47:52 +08:00
Tan Jiang
8b31715b34
provide Clair notification handler
...
update the timestamp in DB, when handling the notification
2017-07-05 15:35:53 +08:00
Wenkai Yin
419cf8dfc3
fix bug: can't show the role of member
2017-06-23 17:23:00 +08:00
Yan
38b09f9f3f
Merge pull request #2579 from ywk253100/170620_pm
...
Using project manager instead of DAO project methods
2017-06-20 05:40:55 -07:00
Wenkai Yin
de2479edee
update
2017-06-20 13:49:41 +08:00
Wenkai Yin
0aed9a1171
use project manager instead of dao method
2017-06-20 13:19:43 +08:00
Wenkai Yin
8191f4a476
add security context based on admiral
2017-06-18 22:19:12 +08:00
Wenkai Yin
df56010739
bug fix
2017-06-16 17:23:22 +08:00
Wenkai Yin
7d595c10c5
Merge pull request #2485 from ywk253100/170608_project
...
Refactor GET /projects API
2017-06-14 21:03:28 +08:00
Wenkai Yin
d6c084485b
Merge pull request #2497 from ywk253100/170612_user
...
Support pagination in GET /users API
2017-06-14 20:49:59 +08:00
Wenkai Yin
aecfcef51a
Merge remote-tracking branch 'upstream/master' into 170608_project
2017-06-14 20:46:23 +08:00