Commit 6640372f authored by Tiger's avatar Tiger Committed by Enrique Alcantara

Remove sign out link from EKS creation form

We now require a user to authorize a role every time
they use this form, so there is no need for them to
sign out.
parent e182d652
...@@ -314,11 +314,6 @@ export default { ...@@ -314,11 +314,6 @@ export default {
{{ s__('ClusterIntegration|Enter the details for your Amazon EKS Kubernetes cluster') }} {{ s__('ClusterIntegration|Enter the details for your Amazon EKS Kubernetes cluster') }}
</h2> </h2>
<div class="mb-3" v-html="kubernetesIntegrationHelpText"></div> <div class="mb-3" v-html="kubernetesIntegrationHelpText"></div>
<div class="mb-3">
<button class="btn btn-link js-sign-out" @click.prevent="signOut()">
{{ s__('ClusterIntegration|Select a different AWS role') }}
</button>
</div>
<div class="form-group"> <div class="form-group">
<label class="label-bold" for="eks-cluster-name">{{ <label class="label-bold" for="eks-cluster-name">{{
s__('ClusterIntegration|Kubernetes cluster name') s__('ClusterIntegration|Kubernetes cluster name')
......
...@@ -117,9 +117,3 @@ export const setInstanceType = ({ commit }, payload) => { ...@@ -117,9 +117,3 @@ export const setInstanceType = ({ commit }, payload) => {
export const setNodeCount = ({ commit }, payload) => { export const setNodeCount = ({ commit }, payload) => {
commit(types.SET_NODE_COUNT, payload); commit(types.SET_NODE_COUNT, payload);
}; };
export const signOut = ({ commit, state: { signOutPath } }) =>
axios
.delete(signOutPath)
.then(() => commit(types.SIGN_OUT))
.catch(({ response: { data } }) => createFlash(getErrorMessage(data)));
...@@ -13,7 +13,6 @@ export const SET_GITLAB_MANAGED_CLUSTER = 'SET_GITLAB_MANAGED_CLUSTER'; ...@@ -13,7 +13,6 @@ export const SET_GITLAB_MANAGED_CLUSTER = 'SET_GITLAB_MANAGED_CLUSTER';
export const REQUEST_CREATE_ROLE = 'REQUEST_CREATE_ROLE'; export const REQUEST_CREATE_ROLE = 'REQUEST_CREATE_ROLE';
export const CREATE_ROLE_SUCCESS = 'CREATE_ROLE_SUCCESS'; export const CREATE_ROLE_SUCCESS = 'CREATE_ROLE_SUCCESS';
export const CREATE_ROLE_ERROR = 'CREATE_ROLE_ERROR'; export const CREATE_ROLE_ERROR = 'CREATE_ROLE_ERROR';
export const SIGN_OUT = 'SIGN_OUT';
export const REQUEST_CREATE_CLUSTER = 'REQUEST_CREATE_CLUSTER'; export const REQUEST_CREATE_CLUSTER = 'REQUEST_CREATE_CLUSTER';
export const CREATE_CLUSTER_SUCCESS = 'CREATE_CLUSTER_SUCCESS'; export const CREATE_CLUSTER_SUCCESS = 'CREATE_CLUSTER_SUCCESS';
export const CREATE_CLUSTER_ERROR = 'CREATE_CLUSTER_ERROR'; export const CREATE_CLUSTER_ERROR = 'CREATE_CLUSTER_ERROR';
...@@ -60,7 +60,4 @@ export default { ...@@ -60,7 +60,4 @@ export default {
state.isCreatingCluster = false; state.isCreatingCluster = false;
state.createClusterError = error; state.createClusterError = error;
}, },
[types.SIGN_OUT](state) {
state.hasCredentials = false;
},
}; };
...@@ -8,7 +8,7 @@ class Clusters::ClustersController < Clusters::BaseController ...@@ -8,7 +8,7 @@ class Clusters::ClustersController < Clusters::BaseController
before_action :validate_gcp_token, only: [:new] before_action :validate_gcp_token, only: [:new]
before_action :gcp_cluster, only: [:new] before_action :gcp_cluster, only: [:new]
before_action :user_cluster, only: [:new] before_action :user_cluster, only: [:new]
before_action :authorize_create_cluster!, only: [:new, :authorize_aws_role, :revoke_aws_role] before_action :authorize_create_cluster!, only: [:new, :authorize_aws_role]
before_action :authorize_update_cluster!, only: [:update] before_action :authorize_update_cluster!, only: [:update]
before_action :authorize_admin_cluster!, only: [:destroy, :clear_cache] before_action :authorize_admin_cluster!, only: [:destroy, :clear_cache]
before_action :update_applications_status, only: [:cluster_status] before_action :update_applications_status, only: [:cluster_status]
...@@ -154,12 +154,6 @@ class Clusters::ClustersController < Clusters::BaseController ...@@ -154,12 +154,6 @@ class Clusters::ClustersController < Clusters::BaseController
render json: response.body, status: response.status render json: response.body, status: response.status
end end
def revoke_aws_role
current_user.aws_role&.destroy
head :no_content
end
def clear_cache def clear_cache
cluster.delete_cached_resources! cluster.delete_cached_resources!
......
...@@ -33,10 +33,6 @@ class ClusterablePresenter < Gitlab::View::Presenter::Delegated ...@@ -33,10 +33,6 @@ class ClusterablePresenter < Gitlab::View::Presenter::Delegated
polymorphic_path([clusterable, :clusters], action: :authorize_aws_role) polymorphic_path([clusterable, :clusters], action: :authorize_aws_role)
end end
def revoke_aws_role_path
polymorphic_path([clusterable, :clusters], action: :revoke_aws_role)
end
def create_user_clusters_path def create_user_clusters_path
polymorphic_path([clusterable, :clusters], action: :create_user) polymorphic_path([clusterable, :clusters], action: :create_user)
end end
......
...@@ -67,11 +67,6 @@ class InstanceClusterablePresenter < ClusterablePresenter ...@@ -67,11 +67,6 @@ class InstanceClusterablePresenter < ClusterablePresenter
authorize_aws_role_admin_clusters_path authorize_aws_role_admin_clusters_path
end end
override :revoke_aws_role_path
def revoke_aws_role_path
revoke_aws_role_admin_clusters_path
end
override :empty_state_help_text override :empty_state_help_text
def empty_state_help_text def empty_state_help_text
s_('ClusterIntegration|Adding an integration will share the cluster across all projects.') s_('ClusterIntegration|Adding an integration will share the cluster across all projects.')
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
- else - else
.js-create-eks-cluster-form-container{ data: { 'gitlab-managed-cluster-help-path' => help_page_path('user/project/clusters/index.md', anchor: 'gitlab-managed-clusters'), .js-create-eks-cluster-form-container{ data: { 'gitlab-managed-cluster-help-path' => help_page_path('user/project/clusters/index.md', anchor: 'gitlab-managed-clusters'),
'create-role-path' => clusterable.authorize_aws_role_path, 'create-role-path' => clusterable.authorize_aws_role_path,
'sign-out-path' => clusterable.revoke_aws_role_path,
'create-cluster-path' => clusterable.create_aws_clusters_path, 'create-cluster-path' => clusterable.create_aws_clusters_path,
'account-id' => Gitlab::CurrentSettings.eks_account_id, 'account-id' => Gitlab::CurrentSettings.eks_account_id,
'external-id' => @aws_role.role_external_id, 'external-id' => @aws_role.role_external_id,
......
...@@ -145,7 +145,6 @@ Rails.application.routes.draw do ...@@ -145,7 +145,6 @@ Rails.application.routes.draw do
post :create_gcp post :create_gcp
post :create_aws post :create_aws
post :authorize_aws_role post :authorize_aws_role
delete :revoke_aws_role
end end
member do member do
......
...@@ -4145,9 +4145,6 @@ msgstr "" ...@@ -4145,9 +4145,6 @@ msgstr ""
msgid "ClusterIntegration|Select a VPC to use for your EKS Cluster resources. To use a new VPC, first create one on %{startLink}Amazon Web Services %{externalLinkIcon} %{endLink}." msgid "ClusterIntegration|Select a VPC to use for your EKS Cluster resources. To use a new VPC, first create one on %{startLink}Amazon Web Services %{externalLinkIcon} %{endLink}."
msgstr "" msgstr ""
msgid "ClusterIntegration|Select a different AWS role"
msgstr ""
msgid "ClusterIntegration|Select a region to choose a Key Pair" msgid "ClusterIntegration|Select a region to choose a Key Pair"
msgstr "" msgstr ""
......
...@@ -414,27 +414,6 @@ describe Admin::ClustersController do ...@@ -414,27 +414,6 @@ describe Admin::ClustersController do
end end
end end
describe 'DELETE revoke AWS role for EKS cluster' do
let!(:role) { create(:aws_role, user: admin) }
def go
delete :revoke_aws_role
end
it 'deletes the Aws::Role record' do
expect { go }.to change { Aws::Role.count }
expect(response.status).to eq 204
expect(admin.reload_aws_role).to be_nil
end
describe 'security' do
it { expect { go }.to be_allowed_for(:admin) }
it { expect { go }.to be_denied_for(:user) }
it { expect { go }.to be_denied_for(:external) }
end
end
describe 'DELETE clear cluster cache' do describe 'DELETE clear cluster cache' do
let(:cluster) { create(:cluster, :instance) } let(:cluster) { create(:cluster, :instance) }
let!(:kubernetes_namespace) do let!(:kubernetes_namespace) do
......
...@@ -481,32 +481,6 @@ describe Groups::ClustersController do ...@@ -481,32 +481,6 @@ describe Groups::ClustersController do
end end
end end
describe 'DELETE revoke AWS role for EKS cluster' do
let!(:role) { create(:aws_role, user: user) }
def go
delete :revoke_aws_role, params: { group_id: group }
end
it 'deletes the Aws::Role record' do
expect { go }.to change { Aws::Role.count }
expect(response.status).to eq 204
expect(user.reload_aws_role).to be_nil
end
describe 'security' do
it { expect { go }.to be_allowed_for(:admin) }
it { expect { go }.to be_allowed_for(:owner).of(group) }
it { expect { go }.to be_allowed_for(:maintainer).of(group) }
it { expect { go }.to be_denied_for(:developer).of(group) }
it { expect { go }.to be_denied_for(:reporter).of(group) }
it { expect { go }.to be_denied_for(:guest).of(group) }
it { expect { go }.to be_denied_for(:user) }
it { expect { go }.to be_denied_for(:external) }
end
end
describe 'DELETE clear cluster cache' do describe 'DELETE clear cluster cache' do
let(:cluster) { create(:cluster, :group, groups: [group]) } let(:cluster) { create(:cluster, :group, groups: [group]) }
let!(:kubernetes_namespace) do let!(:kubernetes_namespace) do
......
...@@ -482,32 +482,6 @@ describe Projects::ClustersController do ...@@ -482,32 +482,6 @@ describe Projects::ClustersController do
end end
end end
describe 'DELETE revoke AWS role for EKS cluster' do
let!(:role) { create(:aws_role, user: user) }
def go
delete :revoke_aws_role, params: { namespace_id: project.namespace, project_id: project }
end
it 'deletes the Aws::Role record' do
expect { go }.to change { Aws::Role.count }
expect(response.status).to eq 204
expect(user.reload_aws_role).to be_nil
end
describe 'security' do
it { expect { go }.to be_allowed_for(:admin) }
it { expect { go }.to be_allowed_for(:owner).of(project) }
it { expect { go }.to be_allowed_for(:maintainer).of(project) }
it { expect { go }.to be_denied_for(:developer).of(project) }
it { expect { go }.to be_denied_for(:reporter).of(project) }
it { expect { go }.to be_denied_for(:guest).of(project) }
it { expect { go }.to be_denied_for(:user) }
it { expect { go }.to be_denied_for(:external) }
end
end
describe 'DELETE clear cluster cache' do describe 'DELETE clear cluster cache' do
let(:cluster) { create(:cluster, :project, projects: [project]) } let(:cluster) { create(:cluster, :project, projects: [project]) }
let!(:kubernetes_namespace) { create(:cluster_kubernetes_namespace, cluster: cluster) } let!(:kubernetes_namespace) { create(:cluster_kubernetes_namespace, cluster: cluster) }
......
...@@ -32,7 +32,6 @@ describe('EksClusterConfigurationForm', () => { ...@@ -32,7 +32,6 @@ describe('EksClusterConfigurationForm', () => {
beforeEach(() => { beforeEach(() => {
state = eksClusterFormState(); state = eksClusterFormState();
actions = { actions = {
signOut: jest.fn(),
createCluster: jest.fn(), createCluster: jest.fn(),
setClusterName: jest.fn(), setClusterName: jest.fn(),
setEnvironmentScope: jest.fn(), setEnvironmentScope: jest.fn(),
...@@ -159,7 +158,6 @@ describe('EksClusterConfigurationForm', () => { ...@@ -159,7 +158,6 @@ describe('EksClusterConfigurationForm', () => {
}); });
}; };
const findSignOutButton = () => vm.find('.js-sign-out');
const findCreateClusterButton = () => vm.find('.js-create-cluster'); const findCreateClusterButton = () => vm.find('.js-create-cluster');
const findClusterNameInput = () => vm.find('[id=eks-cluster-name]'); const findClusterNameInput = () => vm.find('[id=eks-cluster-name]');
const findEnvironmentScopeInput = () => vm.find('[id=eks-environment-scope]'); const findEnvironmentScopeInput = () => vm.find('[id=eks-environment-scope]');
...@@ -184,11 +182,6 @@ describe('EksClusterConfigurationForm', () => { ...@@ -184,11 +182,6 @@ describe('EksClusterConfigurationForm', () => {
}); });
}); });
it('dispatches signOut action when sign out button is clicked', () => {
findSignOutButton().trigger('click');
expect(actions.signOut).toHaveBeenCalled();
});
it('sets isLoadingRoles to RoleDropdown loading property', () => { it('sets isLoadingRoles to RoleDropdown loading property', () => {
rolesState.isLoadingItems = true; rolesState.isLoadingItems = true;
......
...@@ -21,7 +21,6 @@ import { ...@@ -21,7 +21,6 @@ import {
CREATE_ROLE_ERROR, CREATE_ROLE_ERROR,
REQUEST_CREATE_CLUSTER, REQUEST_CREATE_CLUSTER,
CREATE_CLUSTER_ERROR, CREATE_CLUSTER_ERROR,
SIGN_OUT,
} from '~/create_cluster/eks_cluster/store/mutation_types'; } from '~/create_cluster/eks_cluster/store/mutation_types';
import axios from '~/lib/utils/axios_utils'; import axios from '~/lib/utils/axios_utils';
import createFlash from '~/flash'; import createFlash from '~/flash';
...@@ -281,14 +280,4 @@ describe('EKS Cluster Store Actions', () => { ...@@ -281,14 +280,4 @@ describe('EKS Cluster Store Actions', () => {
expect(createFlash).toHaveBeenCalledWith(payload.name[0]); expect(createFlash).toHaveBeenCalledWith(payload.name[0]);
}); });
}); });
describe('signOut', () => {
beforeEach(() => {
mock.onDelete(state.signOutPath).reply(200, null);
});
it('commits signOut mutation', () => {
testAction(actions.signOut, null, state, [{ type: SIGN_OUT }]);
});
});
}); });
...@@ -16,7 +16,6 @@ import { ...@@ -16,7 +16,6 @@ import {
CREATE_ROLE_ERROR, CREATE_ROLE_ERROR,
REQUEST_CREATE_CLUSTER, REQUEST_CREATE_CLUSTER,
CREATE_CLUSTER_ERROR, CREATE_CLUSTER_ERROR,
SIGN_OUT,
} from '~/create_cluster/eks_cluster/store/mutation_types'; } from '~/create_cluster/eks_cluster/store/mutation_types';
import createState from '~/create_cluster/eks_cluster/store/state'; import createState from '~/create_cluster/eks_cluster/store/state';
import mutations from '~/create_cluster/eks_cluster/store/mutations'; import mutations from '~/create_cluster/eks_cluster/store/mutations';
...@@ -159,15 +158,4 @@ describe('Create EKS cluster store mutations', () => { ...@@ -159,15 +158,4 @@ describe('Create EKS cluster store mutations', () => {
expect(state.createClusterError).toBe(error); expect(state.createClusterError).toBe(error);
}); });
}); });
describe(`mutation ${SIGN_OUT}`, () => {
beforeEach(() => {
state.hasCredentials = true;
mutations[SIGN_OUT](state);
});
it('sets hasCredentials to false', () => {
expect(state.hasCredentials).toBe(false);
});
});
}); });
...@@ -21,12 +21,6 @@ describe InstanceClusterablePresenter do ...@@ -21,12 +21,6 @@ describe InstanceClusterablePresenter do
it { is_expected.to eq(authorize_aws_role_admin_clusters_path) } it { is_expected.to eq(authorize_aws_role_admin_clusters_path) }
end end
describe '#revoke_aws_role_path' do
subject { described_class.new(instance).revoke_aws_role_path }
it { is_expected.to eq(revoke_aws_role_admin_clusters_path) }
end
describe '#clear_cluster_cache_path' do describe '#clear_cluster_cache_path' do
subject { presenter.clear_cluster_cache_path(cluster) } subject { presenter.clear_cluster_cache_path(cluster) }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment