diff options
Diffstat (limited to 'app/views/projects/project_variables')
5 files changed, 82 insertions, 0 deletions
diff --git a/app/views/projects/project_variables/_content.html.haml b/app/views/projects/project_variables/_content.html.haml new file mode 100644 index 00000000000..98f618ca3b8 --- /dev/null +++ b/app/views/projects/project_variables/_content.html.haml @@ -0,0 +1,9 @@ +%h4.prepend-top-0 + Secret variables + = link_to icon('question-circle'), help_page_path('ci/variables/README', anchor: 'secret-variables'), target: '_blank' +%p + These variables will be set to environment by the runner, and could be protected by exposing only to protected branches or tags. +%p + So you can use them for passwords, secret keys or whatever you want. +%p + The value of the variable can be visible in job log if explicitly asked to do so. diff --git a/app/views/projects/project_variables/_form.html.haml b/app/views/projects/project_variables/_form.html.haml new file mode 100644 index 00000000000..0a70a301cb4 --- /dev/null +++ b/app/views/projects/project_variables/_form.html.haml @@ -0,0 +1,19 @@ += form_for [@project.namespace.becomes(Namespace), @project, @variable] do |f| + = form_errors(@variable) + + .form-group + = f.label :key, "Key", class: "label-light" + = f.text_field :key, class: "form-control", placeholder: "PROJECT_VARIABLE", required: true + .form-group + = f.label :value, "Value", class: "label-light" + = f.text_area :value, class: "form-control", placeholder: "PROJECT_VARIABLE" + .form-group + .checkbox + = f.label :protected do + = f.check_box :protected + %strong Protected + .help-block + This variable will be passed only to pipelines running on protected branches and tags + = link_to icon('question-circle'), help_page_path('ci/variables/README', anchor: 'protected-secret-variables'), target: '_blank' + + = f.submit btn_text, class: "btn btn-save" diff --git a/app/views/projects/project_variables/_index.html.haml b/app/views/projects/project_variables/_index.html.haml new file mode 100644 index 00000000000..279667728f2 --- /dev/null +++ b/app/views/projects/project_variables/_index.html.haml @@ -0,0 +1,16 @@ +.row.prepend-top-default.append-bottom-default + .col-lg-4 + = render "projects/project_variables/content" + .col-lg-8 + %h5.prepend-top-0 + Add a variable + = render "projects/project_variables/form", btn_text: "Add new variable" + %hr + %h5.prepend-top-0 + Your variables (#{@project.variables.size}) + - if @project.variables.empty? + %p.settings-message.text-center.append-bottom-0 + No variables found, add one with the form above. + - else + = render "projects/project_variables/table" + %button.btn.btn-info.js-btn-toggle-reveal-values{ "data-status" => 'hidden' } Reveal Values diff --git a/app/views/projects/project_variables/_table.html.haml b/app/views/projects/project_variables/_table.html.haml new file mode 100644 index 00000000000..132f3a5cd4b --- /dev/null +++ b/app/views/projects/project_variables/_table.html.haml @@ -0,0 +1,29 @@ +.table-responsive.variables-table + %table.table + %colgroup + %col + %col + %col + %col{ width: 100 } + %thead + %th Key + %th Value + %th Protected + %th + %tbody + - @project.variables.order_key_asc.each do |variable| + - if variable.id? + %tr + %td.variable-key= variable.key + %td.variable-value{ "data-value" => variable.value }****** + %td.variable-protected= Gitlab::Utils.boolean_to_yes_no(variable.protected) + %td.variable-menu + - puts "variable: #{variable}" + = link_to namespace_project_project_variable_path(@project.namespace, @project, variable), class: "btn btn-transparent btn-variable-edit" do + %span.sr-only + Update + = icon("pencil") + = link_to namespace_project_project_variable_path(@project.namespace, @project, variable), class: "btn btn-transparent btn-variable-delete", method: :delete, data: { confirm: "Are you sure?" } do + %span.sr-only + Remove + = icon("trash") diff --git a/app/views/projects/project_variables/show.html.haml b/app/views/projects/project_variables/show.html.haml new file mode 100644 index 00000000000..297a53ca98c --- /dev/null +++ b/app/views/projects/project_variables/show.html.haml @@ -0,0 +1,9 @@ +- page_title "Variables" + +.row.prepend-top-default.append-bottom-default + .col-lg-3 + = render "content" + .col-lg-9 + %h5.prepend-top-0 + Update variable + = render "form", btn_text: "Save variable" |