BigW Consortium Gitlab
Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gitlab-ce
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Forest Godfrey
gitlab-ce
Commits
6ebbecdd
Commit
6ebbecdd
authored
Jan 12, 2017
by
Douwe Maan
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'fill-authorized-projects' into 'master'
Fill missing authorized projects rows Closes #26194 See merge request !8476
parents
6688d695
c3a2d574
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
52 additions
and
0 deletions
+52
-0
fill-authorized-projects.yml
changelogs/unreleased/fill-authorized-projects.yml
+4
-0
20170106142508_fill_authorized_projects.rb
db/post_migrate/20170106142508_fill_authorized_projects.rb
+30
-0
fill_authorized_projects_spec.rb
spec/migrations/fill_authorized_projects_spec.rb
+18
-0
No files found.
changelogs/unreleased/fill-authorized-projects.yml
0 → 100644
View file @
6ebbecdd
---
title
:
Fill missing authorized projects rows
merge_request
:
author
:
db/post_migrate/20170106142508_fill_authorized_projects.rb
0 → 100644
View file @
6ebbecdd
# See http://doc.gitlab.com/ce/development/migration_style_guide.html
# for more information on how to write migrations for GitLab.
class
FillAuthorizedProjects
<
ActiveRecord
::
Migration
include
Gitlab
::
Database
::
MigrationHelpers
class
User
<
ActiveRecord
::
Base
self
.
table_name
=
'users'
end
# Set this constant to true if this migration requires downtime.
DOWNTIME
=
false
# We're not inserting any data so we don't need to start a transaction.
disable_ddl_transaction!
def
up
relation
=
User
.
select
(
:id
).
where
(
'authorized_projects_populated IS NOT TRUE'
)
relation
.
find_in_batches
(
batch_size:
1_000
)
do
|
rows
|
args
=
rows
.
map
{
|
row
|
[
row
.
id
]
}
Sidekiq
::
Client
.
push_bulk
(
'class'
=>
'AuthorizedProjectsWorker'
,
'args'
=>
args
)
end
end
def
down
end
end
spec/migrations/fill_authorized_projects_spec.rb
0 → 100644
View file @
6ebbecdd
require
'spec_helper'
require
Rails
.
root
.
join
(
'db'
,
'post_migrate'
,
'20170106142508_fill_authorized_projects.rb'
)
describe
FillAuthorizedProjects
do
describe
'#up'
do
it
'schedules the jobs in batches'
do
user1
=
create
(
:user
)
user2
=
create
(
:user
)
expect
(
Sidekiq
::
Client
).
to
receive
(
:push_bulk
).
with
(
'class'
=>
'AuthorizedProjectsWorker'
,
'args'
=>
[[
user1
.
id
],
[
user2
.
id
]]
)
described_class
.
new
.
up
end
end
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment