summaryrefslogtreecommitdiff
path: root/lib/gitlab/kubernetes/role.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/kubernetes/role.rb')
-rw-r--r--lib/gitlab/kubernetes/role.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/gitlab/kubernetes/role.rb b/lib/gitlab/kubernetes/role.rb
new file mode 100644
index 00000000000..096f60f0372
--- /dev/null
+++ b/lib/gitlab/kubernetes/role.rb
@@ -0,0 +1,24 @@
+# frozen_string_literal: true
+
+module Gitlab
+ module Kubernetes
+ class Role
+ def initialize(name:, namespace:, rules:)
+ @name = name
+ @namespace = namespace
+ @rules = rules
+ end
+
+ def generate
+ ::Kubeclient::Resource.new(
+ metadata: { name: name, namespace: namespace },
+ rules: rules
+ )
+ end
+
+ private
+
+ attr_reader :name, :namespace, :rules
+ end
+ end
+end