Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
d9b0b3243e
commit
14fb5a9222
1263 changed files with 1960 additions and 1446 deletions
|
@ -1 +1 @@
|
|||
1b06a8764c22fc3960271b02470317077f284508
|
||||
67e7bb7ab1a20fb5a3d49329cf99dc6f1e1ac17e
|
||||
|
|
|
@ -242,7 +242,7 @@ export default {
|
|||
<gl-form-group
|
||||
:label="__('Type')"
|
||||
label-for="ci-variable-type"
|
||||
class="w-50 append-right-15"
|
||||
class="w-50 gl-mr-5"
|
||||
:class="{ 'w-100': isGroup }"
|
||||
>
|
||||
<gl-form-select id="ci-variable-type" v-model="variable_type" :options="typeOptions" />
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<script>
|
||||
import { GlLoadingIcon, GlTable, GlAlert } from '@gitlab/ui';
|
||||
import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue';
|
||||
import { s__ } from '~/locale';
|
||||
import getIncidents from '../graphql/queries/get_incidents.query.graphql';
|
||||
import { I18N } from '../constants';
|
||||
|
@ -36,6 +37,7 @@ export default {
|
|||
GlLoadingIcon,
|
||||
GlTable,
|
||||
GlAlert,
|
||||
TimeAgoTooltip,
|
||||
},
|
||||
inject: ['projectPath'],
|
||||
apollo: {
|
||||
|
@ -108,7 +110,7 @@ export default {
|
|||
</template>
|
||||
|
||||
<template #cell(createdAt)="{ item }">
|
||||
{{ item.createdAt }}
|
||||
<time-ago-tooltip :time="item.createdAt" />
|
||||
</template>
|
||||
|
||||
<template #cell(assignees)="{ item }">
|
||||
|
|
|
@ -95,7 +95,7 @@ export default {
|
|||
},
|
||||
cancelButtonHref() {
|
||||
if (this.newSnippet) {
|
||||
return this.projectPath ? `/${this.projectPath}/snippets` : `/snippets`;
|
||||
return this.projectPath ? `/${this.projectPath}/-/snippets` : `/-/snippets`;
|
||||
}
|
||||
return this.snippet.webUrl;
|
||||
},
|
||||
|
|
|
@ -91,8 +91,8 @@ export default {
|
|||
condition: this.canCreateSnippet,
|
||||
text: __('New snippet'),
|
||||
href: this.snippet.project
|
||||
? `${this.snippet.project.webUrl}/snippets/new`
|
||||
: '/snippets/new',
|
||||
? `${this.snippet.project.webUrl}/-/snippets/new`
|
||||
: '/-/snippets/new',
|
||||
variant: 'success',
|
||||
category: 'secondary',
|
||||
cssClass: 'ml-2',
|
||||
|
@ -130,7 +130,9 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
redirectToSnippets() {
|
||||
window.location.pathname = `${this.snippet.project?.fullPath || 'dashboard'}/snippets`;
|
||||
window.location.pathname = this.snippet.project
|
||||
? `${this.snippet.project.fullPath}/-/snippets`
|
||||
: 'dashboard/snippets';
|
||||
},
|
||||
closeDeleteModal() {
|
||||
this.$refs.deleteModal.hide();
|
||||
|
|
|
@ -84,9 +84,6 @@ export default {
|
|||
hasCommitInfo() {
|
||||
return this.pipeline.commit && Object.keys(this.pipeline.commit).length > 0;
|
||||
},
|
||||
isTriggeredByMergeRequest() {
|
||||
return Boolean(this.pipeline.merge_request);
|
||||
},
|
||||
isMergeRequestPipeline() {
|
||||
return Boolean(this.pipeline.flags && this.pipeline.flags.merge_request_pipeline);
|
||||
},
|
||||
|
|
|
@ -75,7 +75,7 @@ export default {
|
|||
<div class="gl-text-gray-700">
|
||||
<div v-if="user.bio" class="gl-display-flex gl-mb-2">
|
||||
<icon name="profile" class="gl-text-gray-600 gl-flex-shrink-0" />
|
||||
<span ref="bio" class="ml-1" v-html="user.bioHtml"></span>
|
||||
<span ref="bio" class="gl-ml-2" v-html="user.bioHtml"></span>
|
||||
</div>
|
||||
<div v-if="user.workInformation" class="gl-display-flex gl-mb-2">
|
||||
<icon name="work" class="gl-text-gray-600 gl-flex-shrink-0" />
|
||||
|
|
|
@ -402,7 +402,6 @@ img.emoji {
|
|||
.prepend-left-15 { margin-left: 15px; }
|
||||
.prepend-left-20 { margin-left: 20px; }
|
||||
.prepend-left-64 { margin-left: 64px; }
|
||||
.append-right-15 { margin-right: 15px; }
|
||||
.append-right-20 { margin-right: 20px; }
|
||||
.append-bottom-10 { margin-bottom: 10px; }
|
||||
.append-bottom-20 { margin-bottom: 20px; }
|
||||
|
|
|
@ -44,10 +44,6 @@
|
|||
.btn-default {
|
||||
color: $gl-text-color-secondary;
|
||||
}
|
||||
|
||||
.fa-pause {
|
||||
font-size: 11px;
|
||||
}
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
|
|
|
@ -17,12 +17,15 @@ module Types
|
|||
markdown_field :title_html, null: true
|
||||
field :description, type: GraphQL::STRING_TYPE, null: true,
|
||||
description: 'Description of the commit message'
|
||||
markdown_field :description_html, null: true
|
||||
field :message, type: GraphQL::STRING_TYPE, null: true,
|
||||
description: 'Raw commit message'
|
||||
field :authored_date, type: Types::TimeType, null: true,
|
||||
description: 'Timestamp of when the commit was authored'
|
||||
field :web_url, type: GraphQL::STRING_TYPE, null: false,
|
||||
description: 'Web URL of the commit'
|
||||
field :web_path, type: GraphQL::STRING_TYPE, null: false,
|
||||
description: 'Web path of the commit'
|
||||
field :signature_html, type: GraphQL::STRING_TYPE, null: true, calls_gitaly: true,
|
||||
description: 'Rendered HTML of the commit signature'
|
||||
field :author_name, type: GraphQL::STRING_TYPE, null: true,
|
||||
|
|
|
@ -12,6 +12,8 @@ module Types
|
|||
|
||||
field :web_url, GraphQL::STRING_TYPE, null: true,
|
||||
description: 'Web URL of the blob'
|
||||
field :web_path, GraphQL::STRING_TYPE, null: true,
|
||||
description: 'Web path of the blob'
|
||||
field :lfs_oid, GraphQL::STRING_TYPE, null: true,
|
||||
description: 'LFS ID of the blob',
|
||||
resolve: -> (blob, args, ctx) do
|
||||
|
|
|
@ -13,6 +13,8 @@ module Types
|
|||
|
||||
field :web_url, GraphQL::STRING_TYPE, null: true,
|
||||
description: 'Web URL for the tree entry (directory)'
|
||||
field :web_path, GraphQL::STRING_TYPE, null: true,
|
||||
description: 'Web path for the tree entry (directory)'
|
||||
end
|
||||
# rubocop: enable Graphql/AuthorizeTypes
|
||||
end
|
||||
|
|
|
@ -22,6 +22,8 @@ module Types
|
|||
description: "URL of the user's avatar"
|
||||
field :web_url, GraphQL::STRING_TYPE, null: false,
|
||||
description: 'Web URL of the user'
|
||||
field :web_path, GraphQL::STRING_TYPE, null: false,
|
||||
description: 'Web path of the user'
|
||||
field :todos, Types::TodoType.connection_type, null: false,
|
||||
resolver: Resolvers::TodoResolver,
|
||||
description: 'Todos of the user'
|
||||
|
|
|
@ -38,7 +38,7 @@ module Avatarable
|
|||
|
||||
class_methods do
|
||||
def bot_avatar(image:)
|
||||
Rails.root.join('app', 'assets', 'images', 'bot_avatars', image).open
|
||||
Rails.root.join('lib', 'assets', 'images', 'bot_avatars', image).open
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -18,6 +18,10 @@ class BlobPresenter < Gitlab::View::Presenter::Delegated
|
|||
Gitlab::Routing.url_helpers.project_blob_url(blob.repository.project, File.join(blob.commit_id, blob.path))
|
||||
end
|
||||
|
||||
def web_path
|
||||
Gitlab::Routing.url_helpers.project_blob_path(blob.repository.project, File.join(blob.commit_id, blob.path))
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def load_all_blob_data
|
||||
|
|
|
@ -21,6 +21,10 @@ class CommitPresenter < Gitlab::View::Presenter::Delegated
|
|||
url_builder.build(commit)
|
||||
end
|
||||
|
||||
def web_path
|
||||
url_builder.build(commit, only_path: true)
|
||||
end
|
||||
|
||||
def signature_html
|
||||
return unless commit.has_signature?
|
||||
|
||||
|
|
|
@ -6,4 +6,8 @@ class TreeEntryPresenter < Gitlab::View::Presenter::Delegated
|
|||
def web_url
|
||||
Gitlab::Routing.url_helpers.project_tree_url(tree.repository.project, File.join(tree.commit_id, tree.path))
|
||||
end
|
||||
|
||||
def web_path
|
||||
Gitlab::Routing.url_helpers.project_tree_path(tree.repository.project, File.join(tree.commit_id, tree.path))
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,4 +6,8 @@ class UserPresenter < Gitlab::View::Presenter::Delegated
|
|||
def web_url
|
||||
Gitlab::Routing.url_helpers.user_url(user)
|
||||
end
|
||||
|
||||
def web_path
|
||||
Gitlab::Routing.url_helpers.user_path(user)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -19,9 +19,21 @@ class MergeRequestPollWidgetEntity < Grape::Entity
|
|||
# User entities
|
||||
expose :merge_user, using: UserEntity
|
||||
|
||||
expose :actual_head_pipeline, with: PipelineDetailsEntity, as: :pipeline, if: -> (mr, _) { presenter(mr).can_read_pipeline? }
|
||||
expose :actual_head_pipeline, as: :pipeline, if: -> (mr, _) { presenter(mr).can_read_pipeline? } do |merge_request, options|
|
||||
if Feature.enabled?(:merge_request_short_pipeline_serializer, merge_request.project)
|
||||
MergeRequests::PipelineEntity.represent(merge_request.actual_head_pipeline, options)
|
||||
else
|
||||
PipelineDetailsEntity.represent(merge_request.actual_head_pipeline, options)
|
||||
end
|
||||
end
|
||||
|
||||
expose :merge_pipeline, with: PipelineDetailsEntity, if: ->(mr, _) { mr.merged? && can?(request.current_user, :read_pipeline, mr.target_project)}
|
||||
expose :merge_pipeline, if: ->(mr, _) { mr.merged? && can?(request.current_user, :read_pipeline, mr.target_project)} do |merge_request, options|
|
||||
if Feature.enabled?(:merge_request_short_pipeline_serializer, merge_request.project)
|
||||
MergeRequests::PipelineEntity.represent(merge_request.merge_pipeline, options)
|
||||
else
|
||||
PipelineDetailsEntity.represent(merge_request.merge_pipeline, options)
|
||||
end
|
||||
end
|
||||
|
||||
expose :default_merge_commit_message
|
||||
|
||||
|
|
42
app/serializers/merge_requests/pipeline_entity.rb
Normal file
42
app/serializers/merge_requests/pipeline_entity.rb
Normal file
|
@ -0,0 +1,42 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class MergeRequests::PipelineEntity < Grape::Entity
|
||||
include RequestAwareEntity
|
||||
|
||||
expose :id
|
||||
expose :active?, as: :active
|
||||
|
||||
expose :path do |pipeline|
|
||||
project_pipeline_path(pipeline.project, pipeline)
|
||||
end
|
||||
|
||||
expose :flags do
|
||||
expose :merge_request_pipeline?, as: :merge_request_pipeline
|
||||
end
|
||||
|
||||
expose :commit, using: CommitEntity
|
||||
|
||||
expose :details do
|
||||
expose :name do |pipeline|
|
||||
pipeline.present.name
|
||||
end
|
||||
|
||||
expose :detailed_status, as: :status, with: DetailedStatusEntity do |pipeline|
|
||||
pipeline.detailed_status(request.current_user)
|
||||
end
|
||||
|
||||
expose :ordered_stages, as: :stages, using: StageEntity
|
||||
end
|
||||
|
||||
# Coverage isn't always necessary (e.g. when displaying project pipelines in
|
||||
# the UI). Instead of creating an entirely different entity we just allow the
|
||||
# disabling of this specific field whenever necessary.
|
||||
expose :coverage, unless: proc { options[:disable_coverage] }
|
||||
|
||||
expose :ref do
|
||||
expose :branch?, as: :branch
|
||||
end
|
||||
|
||||
expose :triggered_by_pipeline, as: :triggered_by, with: TriggeredPipelineEntity
|
||||
expose :triggered_pipelines, as: :triggered, using: TriggeredPipelineEntity
|
||||
end
|
|
@ -69,10 +69,10 @@
|
|||
= sprite_icon('pencil', size: 16)
|
||||
.btn-group
|
||||
- if runner.active?
|
||||
= link_to [:pause, :admin, runner], method: :get, class: 'btn btn-default has-tooltip', title: _('Pause'), ref: 'tooltip', aria: { label: _('Pause') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?') } do
|
||||
= icon('pause')
|
||||
= link_to [:pause, :admin, runner], method: :get, class: 'btn btn-default btn-svg has-tooltip', title: _('Pause'), ref: 'tooltip', aria: { label: _('Pause') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?') } do
|
||||
= sprite_icon('pause')
|
||||
- else
|
||||
= link_to [:resume, :admin, runner], method: :get, class: 'btn btn-default has-tooltip gl-px-3', title: _('Resume'), ref: 'tooltip', aria: { label: _('Resume') }, data: { placement: 'top', container: 'body'} do
|
||||
= link_to [:resume, :admin, runner], method: :get, class: 'btn btn-default btn-svg has-tooltip gl-px-3', title: _('Resume'), ref: 'tooltip', aria: { label: _('Resume') }, data: { placement: 'top', container: 'body'} do
|
||||
= sprite_icon('play')
|
||||
.btn-group
|
||||
= link_to [:admin, runner], method: :delete, class: 'btn btn-danger has-tooltip', title: _('Remove'), ref: 'tooltip', aria: { label: _('Remove') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?') } do
|
||||
|
|
|
@ -126,5 +126,5 @@
|
|||
= link_to play_project_job_path(job.project, job, return_to: request.original_url), method: :post, title: _('Play'), class: 'btn btn-build' do
|
||||
= custom_icon('icon_play')
|
||||
- elsif job.retryable?
|
||||
= link_to retry_project_job_path(job.project, job, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build' do
|
||||
= icon('repeat')
|
||||
= link_to retry_project_job_path(job.project, job, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build gl-button btn-icon btn-default' do
|
||||
= sprite_icon('repeat', css_class: 'gl-icon')
|
||||
|
|
|
@ -71,8 +71,8 @@
|
|||
= build.present.callout_failure_message
|
||||
%td.responsive-table-cell.build-actions
|
||||
- if can?(current_user, :update_build, job)
|
||||
= link_to retry_project_job_path(build.project, build, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build' do
|
||||
= icon('repeat')
|
||||
= link_to retry_project_job_path(build.project, build, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build gl-button btn-icon btn-default' do
|
||||
= sprite_icon('repeat', css_class: 'gl-icon')
|
||||
- if can?(current_user, :read_build, job)
|
||||
%tr.build-trace-row.responsive-table-border-end
|
||||
%td
|
||||
|
|
|
@ -84,7 +84,7 @@
|
|||
= link_to @user.public_email, "mailto:#{@user.public_email}", class: 'text-link'
|
||||
- if @user.bio.present?
|
||||
.cover-desc.cgray
|
||||
%p.profile-user-bio
|
||||
.profile-user-bio
|
||||
= markdown(@user.bio_html)
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Add default_membership_role column to saml_providers table
|
||||
merge_request: 37552
|
||||
author:
|
||||
type: added
|
5
changelogs/unreleased/225898-fa-repeat-replacement.yml
Normal file
5
changelogs/unreleased/225898-fa-repeat-replacement.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Replace fa-replace icon with svg
|
||||
merge_request: 37228
|
||||
author:
|
||||
type: other
|
5
changelogs/unreleased/225924-fa-pause-replacement.yml
Normal file
5
changelogs/unreleased/225924-fa-pause-replacement.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Replace fa-pause with pause svg
|
||||
merge_request: 37149
|
||||
author:
|
||||
type: other
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Surface timeafo for created date in Incidents List
|
||||
merge_request: 37567
|
||||
author:
|
||||
type: added
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Fix missing path for avatars of bots
|
||||
merge_request: 37671
|
||||
author:
|
||||
type: fixed
|
5
changelogs/unreleased/dz-scoped-snippets-routing.yml
Normal file
5
changelogs/unreleased/dz-scoped-snippets-routing.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Make scoped snippet routing a default one
|
||||
merge_request: 36091
|
||||
author:
|
||||
type: changed
|
5
changelogs/unreleased/fix-bio-rendering-on-profile.yml
Normal file
5
changelogs/unreleased/fix-bio-rendering-on-profile.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Fix bio container width on profile page
|
||||
merge_request: 37572
|
||||
author:
|
||||
type: fixed
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Added webPath and descriptionHtml types to the repository GraphQL entities
|
||||
merge_request: 37416
|
||||
author:
|
||||
type: added
|
|
@ -1,5 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
# Patch to use COPY in db/structure.sql when populating schema_migrations table
|
||||
# Patch to write version information as empty files under the db/schema_migrations directory
|
||||
# This is intended to reduce potential for merge conflicts in db/structure.sql
|
||||
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.prepend(Gitlab::Database::PostgresqlAdapter::SchemaVersionsCopyMixin)
|
||||
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.prepend(Gitlab::Database::PostgresqlAdapter::DumpSchemaVersionsMixin)
|
||||
# Patch to load version information from empty files under the db/schema_migrations directory
|
||||
ActiveRecord::Tasks::PostgreSQLDatabaseTasks.prepend(Gitlab::Database::PostgresqlDatabaseTasks::LoadSchemaVersionsMixin)
|
||||
|
|
|
@ -178,6 +178,8 @@ Rails.application.routes.draw do
|
|||
# in case we decide to move away from doorkeeper-openid_connect
|
||||
get 'jwks' => 'doorkeeper/openid_connect/discovery#keys'
|
||||
|
||||
draw :snippets
|
||||
|
||||
# Product analytics collector
|
||||
match '/collector/i', to: ProductAnalytics::CollectorApp.new, via: :all
|
||||
end
|
||||
|
@ -258,7 +260,6 @@ Rails.application.routes.draw do
|
|||
draw :api
|
||||
draw :sidekiq
|
||||
draw :help
|
||||
draw :snippets
|
||||
draw :google_api
|
||||
draw :import
|
||||
draw :uploads
|
||||
|
@ -269,11 +270,8 @@ Rails.application.routes.draw do
|
|||
draw :user
|
||||
draw :project
|
||||
|
||||
# Serve snippet routes under /-/snippets.
|
||||
# To ensure an old unscoped routing is used for the UI we need to
|
||||
# add prefix 'as' to the scope routing and place it below original routing.
|
||||
# Issue https://gitlab.com/gitlab-org/gitlab/-/issues/210024
|
||||
scope '-', as: :scoped do
|
||||
scope as: 'deprecated' do
|
||||
draw :snippets
|
||||
end
|
||||
|
||||
|
|
|
@ -346,6 +346,13 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
namespace :import do
|
||||
resource :jira, only: [:show], controller: :jira
|
||||
end
|
||||
|
||||
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do
|
||||
member do
|
||||
get :raw
|
||||
post :mark_as_spam
|
||||
end
|
||||
end
|
||||
end
|
||||
# End of the /-/ scope.
|
||||
|
||||
|
@ -382,26 +389,6 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
end
|
||||
end
|
||||
|
||||
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do # rubocop: disable Cop/PutProjectRoutesUnderScope
|
||||
member do
|
||||
get :raw
|
||||
post :mark_as_spam
|
||||
end
|
||||
end
|
||||
|
||||
# Serve snippet routes under /-/snippets.
|
||||
# To ensure an old unscoped routing is used for the UI we need to
|
||||
# add prefix 'as' to the scope routing and place it below original routing.
|
||||
# Issue https://gitlab.com/gitlab-org/gitlab/-/issues/29572
|
||||
scope '-', as: :scoped do
|
||||
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do # rubocop: disable Cop/PutProjectRoutesUnderScope
|
||||
member do
|
||||
get :raw
|
||||
post :mark_as_spam
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
namespace :prometheus do
|
||||
resources :alerts, constraints: { id: /\d+/ }, only: [:index, :create, :show, :update, :destroy] do # rubocop: disable Cop/PutProjectRoutesUnderScope
|
||||
post :notify, on: :collection
|
||||
|
@ -511,10 +498,18 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
end
|
||||
|
||||
# Deprecated unscoped routing.
|
||||
# Issue https://gitlab.com/gitlab-org/gitlab/issues/118849
|
||||
scope as: 'deprecated' do
|
||||
# Issue https://gitlab.com/gitlab-org/gitlab/issues/118849
|
||||
draw :pipelines
|
||||
draw :repository
|
||||
|
||||
# Issue https://gitlab.com/gitlab-org/gitlab/-/issues/29572
|
||||
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do # rubocop: disable Cop/PutProjectRoutesUnderScope
|
||||
member do
|
||||
get :raw
|
||||
post :mark_as_spam
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# All new routes should go under /-/ scope.
|
||||
|
|
|
@ -17,14 +17,11 @@ resources :snippets, concerns: :awardable do
|
|||
end
|
||||
end
|
||||
|
||||
# Use this /-/ scope for all new snippet routes.
|
||||
scope path: '-' do
|
||||
get '/snippets/:snippet_id/raw/:ref/*path',
|
||||
to: 'snippets/blobs#raw',
|
||||
as: :snippet_blob_raw,
|
||||
format: false,
|
||||
constraints: { snippet_id: /\d+/ }
|
||||
end
|
||||
get '/snippets/:snippet_id/raw/:ref/*path',
|
||||
to: 'snippets/blobs#raw',
|
||||
as: :snippet_blob_raw,
|
||||
format: false,
|
||||
constraints: { snippet_id: /\d+/ }
|
||||
|
||||
get '/s/:username', to: redirect('users/%{username}/snippets'),
|
||||
constraints: { username: /[a-zA-Z.0-9_\-]+(?<!\.atom)/ }
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class AddDefaultMembershipRoleToSamlProvider < ActiveRecord::Migration[6.0]
|
||||
DOWNTIME = false
|
||||
|
||||
GUEST_USER_ROLE = 10
|
||||
|
||||
def change
|
||||
add_column :saml_providers, :default_membership_role, :smallint, default: GUEST_USER_ROLE, null: false
|
||||
end
|
||||
end
|
1
db/schema_migrations/20181228175414
Normal file
1
db/schema_migrations/20181228175414
Normal file
|
@ -0,0 +1 @@
|
|||
789496127df650700b043e55cf1198f778d4f290f320c629905e242f2d0b0664
|
1
db/schema_migrations/20190102152410
Normal file
1
db/schema_migrations/20190102152410
Normal file
|
@ -0,0 +1 @@
|
|||
b4437ea9b52eaa5c1e25982995720139b359e58c9622a1206b212e96a188e28a
|
1
db/schema_migrations/20190103140724
Normal file
1
db/schema_migrations/20190103140724
Normal file
|
@ -0,0 +1 @@
|
|||
a972ee9ce7142d93108f635f550d0b6245c335dec130072e9f5121fed52544a1
|
1
db/schema_migrations/20190104182041
Normal file
1
db/schema_migrations/20190104182041
Normal file
|
@ -0,0 +1 @@
|
|||
2f2226dc7a34ae86e00f00ad03e74b2591adc6e5f9367b779c7bb57a38702c0f
|
1
db/schema_migrations/20190107151020
Normal file
1
db/schema_migrations/20190107151020
Normal file
|
@ -0,0 +1 @@
|
|||
52b5718373a5a336a38257aa73758059e77ba15afab89ac3326f8a96ac4df00a
|
1
db/schema_migrations/20190108192941
Normal file
1
db/schema_migrations/20190108192941
Normal file
|
@ -0,0 +1 @@
|
|||
58d3c729a331666723ff80b4f778795d39bcf6b62fb79931bf25e30ac072fbf8
|
1
db/schema_migrations/20190109153125
Normal file
1
db/schema_migrations/20190109153125
Normal file
|
@ -0,0 +1 @@
|
|||
901f28f6af880c088971c619d095db2d328c42a8b3b31b4faf53d4bf0f76b4e0
|
1
db/schema_migrations/20190114172110
Normal file
1
db/schema_migrations/20190114172110
Normal file
|
@ -0,0 +1 @@
|
|||
4bde1677e881c6bb03785e313875fce7c4bf690f1fe8b807be473331cfb57c22
|
1
db/schema_migrations/20190115054215
Normal file
1
db/schema_migrations/20190115054215
Normal file
|
@ -0,0 +1 @@
|
|||
1a87f77540cf91ae8d640819d515ed34ca69bef1e0d5494b0247385e44f3520c
|
1
db/schema_migrations/20190115054216
Normal file
1
db/schema_migrations/20190115054216
Normal file
|
@ -0,0 +1 @@
|
|||
7bd27433ac96c9aaf0ab7aeb5b4bea9af292b56ff5cb9966df63145a95a906e3
|
1
db/schema_migrations/20190115092821
Normal file
1
db/schema_migrations/20190115092821
Normal file
|
@ -0,0 +1 @@
|
|||
0d1262ee8c48483020f8aaec1d737650339e56c0fa0b530a047423e5ad4cf7fb
|
1
db/schema_migrations/20190116234221
Normal file
1
db/schema_migrations/20190116234221
Normal file
|
@ -0,0 +1 @@
|
|||
36ad5643295d8ab4f2b50c028dc6e047ac1bba18c2495862113c227040549a7c
|
1
db/schema_migrations/20190124200344
Normal file
1
db/schema_migrations/20190124200344
Normal file
|
@ -0,0 +1 @@
|
|||
c3563a49a4f65389da84eae0a3d6851ac1d89f736ad213047bb20b085cf65444
|
1
db/schema_migrations/20190130091630
Normal file
1
db/schema_migrations/20190130091630
Normal file
|
@ -0,0 +1 @@
|
|||
824c8286fcc54bf104c76159d75d22addb9084f932d884008a6e09d3ffdd4fc3
|
1
db/schema_migrations/20190131122559
Normal file
1
db/schema_migrations/20190131122559
Normal file
|
@ -0,0 +1 @@
|
|||
8c9392470fe4f34e5a194b449702161fedfe12237c87e1653fc1edaff6f82493
|
1
db/schema_migrations/20190204115450
Normal file
1
db/schema_migrations/20190204115450
Normal file
|
@ -0,0 +1 @@
|
|||
1259521d2b9cc79694f0d47dce9e599b7fb0abfd3fa6b8c0161860b6815676c8
|
1
db/schema_migrations/20190206193120
Normal file
1
db/schema_migrations/20190206193120
Normal file
|
@ -0,0 +1 @@
|
|||
75e303c1cc9ba39465ed4cb7db6b24b38af0f83b11b72fcc25478bd98260ecd9
|
1
db/schema_migrations/20190211131150
Normal file
1
db/schema_migrations/20190211131150
Normal file
|
@ -0,0 +1 @@
|
|||
e400393e5a5cfdbcea5927ce6c037e0879cf86d8b35c11673701a2515bbf93b6
|
1
db/schema_migrations/20190214112022
Normal file
1
db/schema_migrations/20190214112022
Normal file
|
@ -0,0 +1 @@
|
|||
a3afb501288961682a4969f4ecaf2496e75795fa2adaa10d3d047ee24c9b1967
|
1
db/schema_migrations/20190215154930
Normal file
1
db/schema_migrations/20190215154930
Normal file
|
@ -0,0 +1 @@
|
|||
3eea929f8efcb9ef32242c98a7393a8b45eceb3930b7e9b3a782dd9f5628d718
|
1
db/schema_migrations/20190218134158
Normal file
1
db/schema_migrations/20190218134158
Normal file
|
@ -0,0 +1 @@
|
|||
86716aa523d3fbf1c0dc40e758b004ee500d9b6dbc5f5f05ddf167b0f1937fd7
|
1
db/schema_migrations/20190218134209
Normal file
1
db/schema_migrations/20190218134209
Normal file
|
@ -0,0 +1 @@
|
|||
e63a6b7f3032aa58d906f0b5b2141ae376bc4ce78aa4a9c18c983b4c749cd736
|
1
db/schema_migrations/20190219201635
Normal file
1
db/schema_migrations/20190219201635
Normal file
|
@ -0,0 +1 @@
|
|||
bba3d5fba71bc98e53f3858cf039d74049eb9beb0c6a7d075909dd58e88595ba
|
1
db/schema_migrations/20190220142344
Normal file
1
db/schema_migrations/20190220142344
Normal file
|
@ -0,0 +1 @@
|
|||
f0c7e5bb3048b6e7d91a4fb5082ad0b1ac86965287f956dc8a2de17e13a9f365
|
1
db/schema_migrations/20190220150130
Normal file
1
db/schema_migrations/20190220150130
Normal file
|
@ -0,0 +1 @@
|
|||
341ac337f4b5aa05bbb6d69ca4517a785eb2f577ed53b282484f6b2bf44eaf86
|
1
db/schema_migrations/20190222051615
Normal file
1
db/schema_migrations/20190222051615
Normal file
|
@ -0,0 +1 @@
|
|||
af6fc844acb6091006688452a2a5d863bb133908bc739f36267fa8178c316d21
|
1
db/schema_migrations/20190225152525
Normal file
1
db/schema_migrations/20190225152525
Normal file
|
@ -0,0 +1 @@
|
|||
78ca691904675f03d3debbb6a632e75d74eee054150ed4cd93804a4d70aeb6b4
|
1
db/schema_migrations/20190225160301
Normal file
1
db/schema_migrations/20190225160301
Normal file
|
@ -0,0 +1 @@
|
|||
614cfc757d5f3eddc1144247932b83c71359edea88f06bef9348081448b78134
|
1
db/schema_migrations/20190228192410
Normal file
1
db/schema_migrations/20190228192410
Normal file
|
@ -0,0 +1 @@
|
|||
ccfbf0b383cc80dca181abed3e23e1c41033aa59b38c2fea25b424e08329633c
|
1
db/schema_migrations/20190301081611
Normal file
1
db/schema_migrations/20190301081611
Normal file
|
@ -0,0 +1 @@
|
|||
3bab89fa4b95f022ec5a17a1fd3c006f7f822091f35e3db923e1b8f0ca7c0b3e
|
1
db/schema_migrations/20190301182457
Normal file
1
db/schema_migrations/20190301182457
Normal file
|
@ -0,0 +1 @@
|
|||
43b776baffd1c8c2e0731c3d897aa3b4f043faa79132dcd2b73d06ee53641f92
|
1
db/schema_migrations/20190312071108
Normal file
1
db/schema_migrations/20190312071108
Normal file
|
@ -0,0 +1 @@
|
|||
85a35b85d9c6c484cea1991504d2406f752c09929d2770309d475feee238f69c
|
1
db/schema_migrations/20190312113229
Normal file
1
db/schema_migrations/20190312113229
Normal file
|
@ -0,0 +1 @@
|
|||
2028ff93a38e1788d91884f63689d35163cf01ced7e7a049184f2081a18cdafd
|
1
db/schema_migrations/20190312113634
Normal file
1
db/schema_migrations/20190312113634
Normal file
|
@ -0,0 +1 @@
|
|||
52626206f5779839a1d5b2a4910ae3f79adcaa617d21816b25dd8eb18d0f234e
|
1
db/schema_migrations/20190313092516
Normal file
1
db/schema_migrations/20190313092516
Normal file
|
@ -0,0 +1 @@
|
|||
b81fd5f350588d2326c97bd061f3b7c3ab97023e445335ad3d848c8eb2c14f48
|
1
db/schema_migrations/20190315191339
Normal file
1
db/schema_migrations/20190315191339
Normal file
|
@ -0,0 +1 @@
|
|||
3a8bd7f70351a26ba827ad4e3a63e374c9065e232109925286f6ff0d79430b7b
|
1
db/schema_migrations/20190320174702
Normal file
1
db/schema_migrations/20190320174702
Normal file
|
@ -0,0 +1 @@
|
|||
8a180702a02279a67245c4fa90fd168ee86d373597902fcf5acd2ca5ed5bb5ee
|
1
db/schema_migrations/20190322132835
Normal file
1
db/schema_migrations/20190322132835
Normal file
|
@ -0,0 +1 @@
|
|||
56c444f12de56f3e31c723632944a7dacd7eb256760ea268a97f8a02f6365491
|
1
db/schema_migrations/20190322164830
Normal file
1
db/schema_migrations/20190322164830
Normal file
|
@ -0,0 +1 @@
|
|||
ad03fde4d9311607d920e6bddde19b0f96a2ee7ed3199d6eb5f9b111df25a525
|
1
db/schema_migrations/20190325080727
Normal file
1
db/schema_migrations/20190325080727
Normal file
|
@ -0,0 +1 @@
|
|||
77e3fe2b1a968a4be27b7150ea993de11028b876905f30d381bc08263dab0d3f
|
1
db/schema_migrations/20190325105715
Normal file
1
db/schema_migrations/20190325105715
Normal file
|
@ -0,0 +1 @@
|
|||
c674d2f2cf2147125760613edfea332860f90a9cc1e1d9f3c857aa0b033d8912
|
1
db/schema_migrations/20190325111602
Normal file
1
db/schema_migrations/20190325111602
Normal file
|
@ -0,0 +1 @@
|
|||
3fac4d070229a0534a3b98d5f80c814c5564881b24837289207769b9a235e808
|
1
db/schema_migrations/20190325165127
Normal file
1
db/schema_migrations/20190325165127
Normal file
|
@ -0,0 +1 @@
|
|||
9b7ebd3a5456b55a73ae1f7d504c36485d0b15f9e2b7ad3f43c71cbfd65720f1
|
1
db/schema_migrations/20190326164045
Normal file
1
db/schema_migrations/20190326164045
Normal file
|
@ -0,0 +1 @@
|
|||
69ed3746ead7d706c62fd5287e9df3a496dc9d17d344a6c43b511db3e2467667
|
1
db/schema_migrations/20190327163904
Normal file
1
db/schema_migrations/20190327163904
Normal file
|
@ -0,0 +1 @@
|
|||
08f49ff72142d860dac3fc70444523d0c89912d1be85a994c17411e4748b9099
|
1
db/schema_migrations/20190329085614
Normal file
1
db/schema_migrations/20190329085614
Normal file
|
@ -0,0 +1 @@
|
|||
a58e6d439a97f378d280aee285a3662525a971ddf11761e0ae3c3093163499db
|
1
db/schema_migrations/20190402150158
Normal file
1
db/schema_migrations/20190402150158
Normal file
|
@ -0,0 +1 @@
|
|||
4501b35c0661f0ef6a3cd46db5d48f90b2131a1ae30bd73b442ed56ac6655e8d
|
1
db/schema_migrations/20190402224749
Normal file
1
db/schema_migrations/20190402224749
Normal file
|
@ -0,0 +1 @@
|
|||
f655a3f9f1f41710ae501c3e4ef0893791c28971d87e12f87d4b65131502b812
|
1
db/schema_migrations/20190403161806
Normal file
1
db/schema_migrations/20190403161806
Normal file
|
@ -0,0 +1 @@
|
|||
fd69f104fb0707d622bc8c7955481b277907e919a2423cc7e35f68e76544a304
|
1
db/schema_migrations/20190404143330
Normal file
1
db/schema_migrations/20190404143330
Normal file
|
@ -0,0 +1 @@
|
|||
dc1704bbed4f8d7e285e8edf9e6d537c8e720f4737f76b089532c6a0712d132a
|
1
db/schema_migrations/20190404231137
Normal file
1
db/schema_migrations/20190404231137
Normal file
|
@ -0,0 +1 @@
|
|||
32f6313383609eb5abd9082e51ddc5719766c3d74d0cc5d776535f52ffddd5bb
|
1
db/schema_migrations/20190408163745
Normal file
1
db/schema_migrations/20190408163745
Normal file
|
@ -0,0 +1 @@
|
|||
47d77dd636c35cd2c7f9bc2de035899548052a2005f29735d078f054c02bee7c
|
1
db/schema_migrations/20190409224933
Normal file
1
db/schema_migrations/20190409224933
Normal file
|
@ -0,0 +1 @@
|
|||
f3fd28e093775afa4f8e94b2355c1b5a6dc5d3138d31faa44b6d70a2f7dc3f88
|
1
db/schema_migrations/20190410173409
Normal file
1
db/schema_migrations/20190410173409
Normal file
|
@ -0,0 +1 @@
|
|||
6c2980e7e9056aa8966bb3e5b2547d9ef85da1b1bc25d5bd2acc1d218f52f14b
|
1
db/schema_migrations/20190412155659
Normal file
1
db/schema_migrations/20190412155659
Normal file
|
@ -0,0 +1 @@
|
|||
62a8e24ba6fb73cd35bbeef9db6ea8827be117e86b5c0b72caeedfab078a5d5d
|
1
db/schema_migrations/20190412183653
Normal file
1
db/schema_migrations/20190412183653
Normal file
|
@ -0,0 +1 @@
|
|||
6760598e05fbf57a005ef680b461d9dfea0481e7e5a8ec295926976cbf674e79
|
1
db/schema_migrations/20190414185432
Normal file
1
db/schema_migrations/20190414185432
Normal file
|
@ -0,0 +1 @@
|
|||
7155530822ffefff7419ea8d5e319a01af58b64cffe56673cb78e8305b834921
|
1
db/schema_migrations/20190415030217
Normal file
1
db/schema_migrations/20190415030217
Normal file
|
@ -0,0 +1 @@
|
|||
c3c9010876f7cd32f1ffa858fb35e530f64dad1e8d86962ee3c2a2d63ec052ec
|
1
db/schema_migrations/20190415095825
Normal file
1
db/schema_migrations/20190415095825
Normal file
|
@ -0,0 +1 @@
|
|||
883a00ae98969170f5f09842b04002145abb5f7e5e253e285eacc71828214ad0
|
1
db/schema_migrations/20190415172035
Normal file
1
db/schema_migrations/20190415172035
Normal file
|
@ -0,0 +1 @@
|
|||
a9e2aed5e1b0ebcdd83b082777fef905bdbec7976a88af8a5393024032d4a61a
|
1
db/schema_migrations/20190416185130
Normal file
1
db/schema_migrations/20190416185130
Normal file
|
@ -0,0 +1 @@
|
|||
96c1a1ccfecd82e93fd77dcaf957c7dc5e9604e18579cf06603f5e62b8816cd0
|
1
db/schema_migrations/20190416213556
Normal file
1
db/schema_migrations/20190416213556
Normal file
|
@ -0,0 +1 @@
|
|||
67ef8b059ebcfbfd447a1c2fee9628344a97aee1d7280722b507e8c59dec8944
|
1
db/schema_migrations/20190416213615
Normal file
1
db/schema_migrations/20190416213615
Normal file
|
@ -0,0 +1 @@
|
|||
7ac526e1cc920771f43333cebf6792ac41e1b0c4364eb8e0eaa955008801d45e
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue