Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
heptapod
heptapod
Commits
05dfe6d70896
Commit
737f322e
authored
Mar 31, 2015
by
Douwe Maan
Browse files
Import GitHub, Bitbucket or GitLab.com projects owned by authenticated user into current namespace.
parent
85b1a3401b36
Changes
5
Hide whitespace changes
Inline
Side-by-side
CHANGELOG
View file @
05dfe6d7
...
...
@@ -48,6 +48,7 @@ v 7.10.0 (unreleased)
- Prevent note form from being cleared when submitting failed.
- Improve file icons rendering on tree (Sullivan Sénéchal)
- API: Add pagination to project events
- Import GitHub, Bitbucket or GitLab.com projects owned by authenticated user into current namespace.
v 7.9.0
- Send EmailsOnPush email when branch or tag is created or deleted.
...
...
app/controllers/import/bitbucket_controller.rb
View file @
05dfe6d7
...
...
@@ -36,8 +36,11 @@ def jobs
def
create
@repo_id
=
params
[
:repo_id
]
||
""
repo
=
client
.
project
(
@repo_id
.
gsub
(
"___"
,
"/"
))
@target_namespace
=
params
[
:new_namespace
].
presence
||
repo
[
"owner"
]
@project_name
=
repo
[
"slug"
]
repo_owner
=
repo
[
"owner"
]
repo_owner
=
current_user
.
username
if
repo_owner
==
client
.
user
[
"user"
][
"username"
]
@target_namespace
=
params
[
:new_namespace
].
presence
||
repo_owner
namespace
=
get_or_create_namespace
||
(
render
and
return
)
...
...
app/controllers/import/github_controller.rb
View file @
05dfe6d7
...
...
@@ -31,8 +31,11 @@ def jobs
def
create
@repo_id
=
params
[
:repo_id
].
to_i
repo
=
client
.
repo
(
@repo_id
)
@target_namespace
=
params
[
:new_namespace
].
presence
||
repo
.
owner
.
login
@project_name
=
repo
.
name
repo_owner
=
repo
.
owner
.
login
repo_owner
=
current_user
.
username
if
repo_owner
==
client
.
user
.
login
@target_namespace
=
params
[
:new_namespace
].
presence
||
repo_owner
namespace
=
get_or_create_namespace
||
(
render
and
return
)
...
...
app/controllers/import/gitlab_controller.rb
View file @
05dfe6d7
...
...
@@ -28,8 +28,11 @@ def jobs
def
create
@repo_id
=
params
[
:repo_id
].
to_i
repo
=
client
.
project
(
@repo_id
)
@target_namespace
=
params
[
:new_namespace
].
presence
||
repo
[
"namespace"
][
"path"
]
@project_name
=
repo
[
"name"
]
repo_owner
=
repo
[
"namespace"
][
"path"
]
repo_owner
=
current_user
.
username
if
repo_owner
==
client
.
user
[
"username"
]
@target_namespace
=
params
[
:new_namespace
].
presence
||
repo_owner
namespace
=
get_or_create_namespace
||
(
render
and
return
)
...
...
lib/gitlab/gitlab_import/client.rb
View file @
05dfe6d7
...
...
@@ -28,6 +28,10 @@ def get_token(code, redirect_uri)
client
.
auth_code
.
get_token
(
code
,
redirect_uri:
redirect_uri
).
token
end
def
user
api
.
get
(
"/api/v3/user"
).
parsed
end
def
issues
(
project_identifier
)
lazy_page_iterator
(
PER_PAGE
)
do
|
page
|
api
.
get
(
"/api/v3/projects/
#{
project_identifier
}
/issues?per_page=
#{
PER_PAGE
}
&page=
#{
page
}
"
).
parsed
...
...
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