ops_team 1.21.1 → 2.0.0.rc3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/bin/ops +4 -40
  3. data/build/darwin_amd64/ops +0 -0
  4. data/build/darwin_arm64/ops +0 -0
  5. data/build/linux_amd64/ops +0 -0
  6. metadata +12 -224
  7. data/Gemfile +0 -30
  8. data/bin/benchmark +0 -185
  9. data/bin/print_config +0 -4
  10. data/bin/print_secrets +0 -4
  11. data/bin/tag +0 -16
  12. data/etc/ops.template.yml +0 -13
  13. data/etc/ruby.template.yml +0 -37
  14. data/etc/terraform.template.yml +0 -36
  15. data/lib/action.rb +0 -103
  16. data/lib/action_list.rb +0 -55
  17. data/lib/action_suggester.rb +0 -17
  18. data/lib/app_config.rb +0 -69
  19. data/lib/builtin.rb +0 -51
  20. data/lib/builtins/background.rb +0 -46
  21. data/lib/builtins/background_log.rb +0 -34
  22. data/lib/builtins/common/up_down.rb +0 -67
  23. data/lib/builtins/countdown.rb +0 -73
  24. data/lib/builtins/down.rb +0 -9
  25. data/lib/builtins/env.rb +0 -21
  26. data/lib/builtins/envdiff.rb +0 -127
  27. data/lib/builtins/exec.rb +0 -24
  28. data/lib/builtins/help.rb +0 -66
  29. data/lib/builtins/helpers/dependency_handler.rb +0 -27
  30. data/lib/builtins/helpers/enumerator.rb +0 -34
  31. data/lib/builtins/init.rb +0 -64
  32. data/lib/builtins/up.rb +0 -9
  33. data/lib/builtins/version.rb +0 -17
  34. data/lib/dependencies/apk.rb +0 -24
  35. data/lib/dependencies/apt.rb +0 -42
  36. data/lib/dependencies/brew.rb +0 -22
  37. data/lib/dependencies/cask.rb +0 -13
  38. data/lib/dependencies/custom.rb +0 -45
  39. data/lib/dependencies/dir.rb +0 -22
  40. data/lib/dependencies/docker.rb +0 -17
  41. data/lib/dependencies/gem.rb +0 -36
  42. data/lib/dependencies/helpers/apt_cache_policy.rb +0 -43
  43. data/lib/dependencies/pip.rb +0 -32
  44. data/lib/dependencies/snap.rb +0 -32
  45. data/lib/dependencies/sshkey.rb +0 -121
  46. data/lib/dependencies/versioned_dependency.rb +0 -25
  47. data/lib/dependency.rb +0 -69
  48. data/lib/environment.rb +0 -47
  49. data/lib/executor.rb +0 -20
  50. data/lib/forward.rb +0 -15
  51. data/lib/forwards.rb +0 -16
  52. data/lib/hook_handler.rb +0 -41
  53. data/lib/ops.rb +0 -129
  54. data/lib/options.rb +0 -22
  55. data/lib/output.rb +0 -71
  56. data/lib/profiler.rb +0 -47
  57. data/lib/runner.rb +0 -110
  58. data/lib/secrets.rb +0 -55
  59. data/lib/version.rb +0 -38
  60. data/loader.rb +0 -10
  61. data/ops_team.gemspec +0 -36
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6544a5e51d57b3cc01a3c8e0b1b8fab0adf6734be81dcad66154ca344e129e15
4
- data.tar.gz: 855d1adc6a202256a761c4d09149444bb0bd775da479292c9f18dd32065a479c
3
+ metadata.gz: 289a7688ae262cd56429fc033a1ef4f58c15abadcf7e1e06eb83b1400e281821
4
+ data.tar.gz: e06e086625b6d1ce948f90d647cb2806ebaa9b2c395c6e2a5ed237b8862d84b3
5
5
  SHA512:
6
- metadata.gz: 12060be2f05b3eb3c346918a757be80cb220eef373871fc6c256a6ff262f7f1df8ca8d7915c120cdb141bbde507f30c93dd7d9c9b2b8d08c882b509e3cc5bea7
7
- data.tar.gz: 5c8e7d7077493e8482a5691ec7b3894a23ec039a913ba01b808276017ec39f8d52726bb7bcd0e62f7d1f69d55d21e2f9d24dbc925908edd5ef80efa7a65250c6
6
+ metadata.gz: fb8a499b2e437e239a1157a8c30c4748792913278c7717043ad43438a60b2a8495c3a5c8665bb155febddf964106ae9ecec70b005855112a1aa4a3886f2a7c4d
7
+ data.tar.gz: 7643258e1a832c25e72c98058e4b05d9248454c431a4f6b28a63a6d88c4f98f3447eed7808f52721cc4e1e0996740550de823cd0c2da18201da05c6cb24e8aa3
data/bin/ops CHANGED
@@ -1,42 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
- # frozen_string_literal: true
2
+ bindir = `uname -sm | tr A-Z a-z | tr ' ' _`
3
+ binpath = File.expand_path("../build/#{bindir}", __FILE__)
3
4
 
4
- start_time = Process.clock_gettime(Process::CLOCK_MONOTONIC)
5
-
6
- require_relative '../lib/profiler'
7
- require 'optparse'
8
-
9
- def usage
10
- puts "Usage: ops [-f|--file <ops_yml>] action [<action args>"
11
- puts " ops_yml: the config file to load instead of './ops.yml'"
12
- puts " action_args: arguments to the action loaded from the config file; depends on the action"
13
-
14
- exit(1)
15
- end
16
-
17
- options = {}
18
- status = -1
19
-
20
- while ARGV[0]&.match(/^-/)
21
- opt = ARGV.shift
22
- case opt
23
- when '-f', '--file'
24
- usage unless ARGV.length >= 1
25
-
26
- options[:file] = ARGV.shift
27
- else
28
- usage
29
- end
30
- end
31
-
32
- Profiler.measure("bin:require") do
33
- require_relative "../loader"
34
- end
35
-
36
- Profiler.measure("bin:run") do
37
- status = Ops.new(ARGV, config_file: options[:file]).run
38
- end
39
-
40
- Profiler.add_measurement("bin:all", Process.clock_gettime(Process::CLOCK_MONOTONIC) - start_time)
41
- Output.error(Profiler.summary) if Profiler.summary
42
- exit status
5
+ ENV['PATH'] = "#{binpath}:#{ENV.fetch('PATH')}"
6
+ exec "ops", *ARGV
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,175 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ops_team
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.21.1
4
+ version: 2.0.0.rc3
5
5
  platform: ruby
6
6
  authors:
7
7
  - nickthecook@gmail.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-11 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bcrypt_pbkdf
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '1.0'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 1.0.1
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '1.0'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 1.0.1
33
- - !ruby/object:Gem::Dependency
34
- name: colorize
35
- requirement: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '0.8'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 0.8.1
43
- type: :runtime
44
- prerelease: false
45
- version_requirements: !ruby/object:Gem::Requirement
46
- requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '0.8'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 0.8.1
53
- - !ruby/object:Gem::Dependency
54
- name: concurrent-ruby
55
- requirement: !ruby/object:Gem::Requirement
56
- requirements:
57
- - - "~>"
58
- - !ruby/object:Gem::Version
59
- version: '1.1'
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- version: 1.1.7
63
- type: :runtime
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - "~>"
68
- - !ruby/object:Gem::Version
69
- version: '1.1'
70
- - - ">="
71
- - !ruby/object:Gem::Version
72
- version: 1.1.7
73
- - !ruby/object:Gem::Dependency
74
- name: ed25519
75
- requirement: !ruby/object:Gem::Requirement
76
- requirements:
77
- - - "~>"
78
- - !ruby/object:Gem::Version
79
- version: '1.2'
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: 1.2.4
83
- type: :runtime
84
- prerelease: false
85
- version_requirements: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '1.2'
90
- - - ">="
91
- - !ruby/object:Gem::Version
92
- version: 1.2.4
93
- - !ruby/object:Gem::Dependency
94
- name: ejson
95
- requirement: !ruby/object:Gem::Requirement
96
- requirements:
97
- - - "~>"
98
- - !ruby/object:Gem::Version
99
- version: '1.2'
100
- - - ">="
101
- - !ruby/object:Gem::Version
102
- version: 1.2.1
103
- type: :runtime
104
- prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '1.2'
110
- - - ">="
111
- - !ruby/object:Gem::Version
112
- version: 1.2.1
113
- - !ruby/object:Gem::Dependency
114
- name: net-ssh
115
- requirement: !ruby/object:Gem::Requirement
116
- requirements:
117
- - - "~>"
118
- - !ruby/object:Gem::Version
119
- version: '7.1'
120
- - - ">="
121
- - !ruby/object:Gem::Version
122
- version: 7.1.0
123
- type: :runtime
124
- prerelease: false
125
- version_requirements: !ruby/object:Gem::Requirement
126
- requirements:
127
- - - "~>"
128
- - !ruby/object:Gem::Version
129
- version: '7.1'
130
- - - ">="
131
- - !ruby/object:Gem::Version
132
- version: 7.1.0
133
- - !ruby/object:Gem::Dependency
134
- name: require_all
135
- requirement: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - "~>"
138
- - !ruby/object:Gem::Version
139
- version: '1.1'
140
- - - ">="
141
- - !ruby/object:Gem::Version
142
- version: 1.1.6
143
- type: :runtime
144
- prerelease: false
145
- version_requirements: !ruby/object:Gem::Requirement
146
- requirements:
147
- - - "~>"
148
- - !ruby/object:Gem::Version
149
- version: '1.1'
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: 1.1.6
153
- - !ruby/object:Gem::Dependency
154
- name: zeitwerk
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - "~>"
158
- - !ruby/object:Gem::Version
159
- version: '2.5'
160
- - - ">="
161
- - !ruby/object:Gem::Version
162
- version: 2.5.3
163
- type: :runtime
164
- prerelease: false
165
- version_requirements: !ruby/object:Gem::Requirement
166
- requirements:
167
- - - "~>"
168
- - !ruby/object:Gem::Version
169
- version: '2.5'
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- version: 2.5.3
11
+ date: 2023-05-01 00:00:00.000000000 Z
12
+ dependencies: []
173
13
  description:
174
14
  email:
175
15
  executables:
@@ -177,63 +17,11 @@ executables:
177
17
  extensions: []
178
18
  extra_rdoc_files: []
179
19
  files:
180
- - Gemfile
181
- - bin/benchmark
182
20
  - bin/ops
183
- - bin/print_config
184
- - bin/print_secrets
185
- - bin/tag
186
- - etc/ops.template.yml
187
- - etc/ruby.template.yml
188
- - etc/terraform.template.yml
189
- - lib/action.rb
190
- - lib/action_list.rb
191
- - lib/action_suggester.rb
192
- - lib/app_config.rb
193
- - lib/builtin.rb
194
- - lib/builtins/background.rb
195
- - lib/builtins/background_log.rb
196
- - lib/builtins/common/up_down.rb
197
- - lib/builtins/countdown.rb
198
- - lib/builtins/down.rb
199
- - lib/builtins/env.rb
200
- - lib/builtins/envdiff.rb
201
- - lib/builtins/exec.rb
202
- - lib/builtins/help.rb
203
- - lib/builtins/helpers/dependency_handler.rb
204
- - lib/builtins/helpers/enumerator.rb
205
- - lib/builtins/init.rb
206
- - lib/builtins/up.rb
207
- - lib/builtins/version.rb
208
- - lib/dependencies/apk.rb
209
- - lib/dependencies/apt.rb
210
- - lib/dependencies/brew.rb
211
- - lib/dependencies/cask.rb
212
- - lib/dependencies/custom.rb
213
- - lib/dependencies/dir.rb
214
- - lib/dependencies/docker.rb
215
- - lib/dependencies/gem.rb
216
- - lib/dependencies/helpers/apt_cache_policy.rb
217
- - lib/dependencies/pip.rb
218
- - lib/dependencies/snap.rb
219
- - lib/dependencies/sshkey.rb
220
- - lib/dependencies/versioned_dependency.rb
221
- - lib/dependency.rb
222
- - lib/environment.rb
223
- - lib/executor.rb
224
- - lib/forward.rb
225
- - lib/forwards.rb
226
- - lib/hook_handler.rb
227
- - lib/ops.rb
228
- - lib/options.rb
229
- - lib/output.rb
230
- - lib/profiler.rb
231
- - lib/runner.rb
232
- - lib/secrets.rb
233
- - lib/version.rb
234
- - loader.rb
235
- - ops_team.gemspec
236
- homepage: https://github.com/nickthecook/ops
21
+ - build/darwin_amd64/ops
22
+ - build/darwin_arm64/ops
23
+ - build/linux_amd64/ops
24
+ homepage: https://github.com/nickthecook/crops
237
25
  licenses:
238
26
  - GPL-3.0-only
239
27
  metadata: {}
@@ -243,16 +31,16 @@ require_paths:
243
31
  - lib
244
32
  required_ruby_version: !ruby/object:Gem::Requirement
245
33
  requirements:
246
- - - ">"
34
+ - - ">="
247
35
  - !ruby/object:Gem::Version
248
- version: '2.6'
36
+ version: '0'
249
37
  required_rubygems_version: !ruby/object:Gem::Requirement
250
38
  requirements:
251
- - - ">="
39
+ - - ">"
252
40
  - !ruby/object:Gem::Version
253
- version: '0'
41
+ version: 1.3.1
254
42
  requirements: []
255
- rubygems_version: 3.1.6
43
+ rubygems_version: 3.3.7
256
44
  signing_key:
257
45
  specification_version: 4
258
46
  summary: ops_team handles basic automation for your project, driven by self-documenting
data/Gemfile DELETED
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source "https://rubygems.org"
4
-
5
- git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
6
-
7
- gem "bcrypt_pbkdf"
8
- gem "colorize"
9
- gem 'concurrent-ruby', require: 'concurrent'
10
- gem "e2mmap"
11
- gem "ed25519"
12
- gem "ejson"
13
- gem "io-console"
14
- gem "json", ">= 2.3.0"
15
- gem "net-ssh"
16
- gem "require_all"
17
- gem "zeitwerk"
18
-
19
- group :test do
20
- gem "fuubar"
21
- gem "rspec"
22
- end
23
-
24
- group :development do
25
- gem "irb"
26
- gem "pry"
27
- gem "pry-byebug"
28
- gem "rerun"
29
- gem "rubocop"
30
- end
data/bin/benchmark DELETED
@@ -1,185 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- require 'json'
5
- require 'colorize'
6
-
7
- COMMANDS = [
8
- "version",
9
- "env",
10
- "help",
11
- "exec echo hi",
12
- "env OPS_AUTO_COMPLETE=true"
13
- ].freeze
14
-
15
- class Runner
16
- RUNS = 10
17
- WARMUPS = 3
18
-
19
- attr_reader :command, :version
20
-
21
- def initialize(command, version)
22
- @command = command
23
- @version = version
24
- end
25
-
26
- def run
27
- unless File.exist?(json_file)
28
- system(
29
- "hyperfine -m #{RUNS} \
30
- --export-json #{json_file} \
31
- --export-markdown #{markdown_file} \
32
- --warmup #{WARMUPS} \
33
- '#{@command}'"
34
- )
35
- end
36
-
37
- results
38
- end
39
-
40
- def results
41
- # for now, only ever one result, since we're not having hyperfine vary params
42
- @results ||= JSON.parse(results_data)["results"].first
43
- end
44
-
45
- def method_missing(method, *_, &_)
46
- results[method.to_s]
47
- end
48
-
49
- def respond_to_missing?(method, _ = false)
50
- results&.keys&.include?(method.to_s)
51
- end
52
-
53
- def json_file
54
- @json_file ||= "#{output_file}.json"
55
- end
56
-
57
- def markdown_file
58
- @markdown_file ||= "#{output_file}.md"
59
- end
60
-
61
- private
62
-
63
- def output_file
64
- "benchmark/#{@version}-#{@command.gsub(" ", "_").gsub("/", "-")}"
65
- end
66
-
67
- def results_data
68
- File.read(json_file)
69
- end
70
- end
71
-
72
- class Benchmark
73
- attr_reader :executable
74
-
75
- def initialize(executable)
76
- @executable = executable
77
- end
78
-
79
- def run
80
- runners.map(&:run)
81
-
82
- runners.map(&:mean)
83
- end
84
-
85
- def version
86
- @version ||= `#{@executable} version`.chomp
87
- end
88
-
89
- def runners
90
- @runners ||= COMMANDS.map do |cmd|
91
- Runner.new("#{@executable} #{cmd}", version)
92
- end
93
- end
94
- end
95
-
96
- class Benchmarker
97
- CLR_THRESHOLD = 0.1
98
- CLR_WIDTH = 14
99
- COL_WIDTH = 24
100
- CMD_WIDTH = 30
101
-
102
- def initialize(*executables)
103
- @executables = executables
104
- end
105
-
106
- def summary
107
- result_pairs = results.first.zip(results.last)
108
-
109
- output = header
110
- COMMANDS.length.times do |index|
111
- output << format(
112
- "%#{CMD_WIDTH + CLR_WIDTH}s %#{COL_WIDTH}s %#{COL_WIDTH + CLR_WIDTH}s",
113
- COMMANDS[index].white,
114
- *result_strings(result_pairs[index])
115
- )
116
- end
117
- output << summary_numbers
118
-
119
- output.join("\n")
120
- end
121
-
122
- def benchmarks
123
- @benchmarks ||= @executables.map do |executable|
124
- Benchmark.new(executable)
125
- end
126
- end
127
-
128
- def results
129
- @results ||= benchmarks.map(&:run)
130
- end
131
-
132
- private
133
-
134
- def result_pairs
135
- @result_pairs ||= results.first.zip(results.last)
136
- end
137
-
138
- def header
139
- [
140
- format(
141
- "%#{CMD_WIDTH}s %#{COL_WIDTH + CLR_WIDTH}s %#{COL_WIDTH + CLR_WIDTH}s",
142
- "", *benchmarks.map { |b| b.executable.white }
143
- ),
144
- format(
145
- "%#{CMD_WIDTH}s %#{COL_WIDTH + CLR_WIDTH}s %#{COL_WIDTH + CLR_WIDTH}s",
146
- "", *benchmarks.map { |b| b.version.white }
147
- )
148
- ]
149
- end
150
-
151
- def result_strings(pair)
152
- colour = :blue
153
- if pair.last < (pair.first * (1 - CLR_THRESHOLD))
154
- colour = :green
155
- elsif pair.last < (pair.first * CLR_THRESHOLD)
156
- colour = :red
157
- end
158
-
159
- outputs = pair.map { |number| format("%02.3f", number) }
160
-
161
- outputs[1] = outputs.last.send(colour)
162
-
163
- outputs
164
- end
165
-
166
- def summary_numbers
167
- format(
168
- "%#{CMD_WIDTH + CLR_WIDTH}s %#{COL_WIDTH}s %#{COL_WIDTH + CLR_WIDTH}s",
169
- "Avg difference".white, "-", avg_diff_string.white
170
- )
171
- end
172
-
173
- def avg_diff_string
174
- format("%02.3f", avg_diff)
175
- end
176
-
177
- def avg_diff
178
- result_pairs.each_with_object([]) do |pair, diff|
179
- diff << pair.first - pair.last
180
- end.sum / result_pairs.length
181
- end
182
- end
183
-
184
- `rm -f benchmark/*.json benchmark/*.md` unless %w[--skip -s].include?(ARGV[0])
185
- puts Benchmarker.new("ops", "bin/ops").summary
data/bin/print_config DELETED
@@ -1,4 +0,0 @@
1
- #!/bin/bash
2
-
3
- echo $KEY1
4
- echo $KEY2
data/bin/print_secrets DELETED
@@ -1,4 +0,0 @@
1
- #!/bin/bash
2
-
3
- echo "$SECRET1"
4
- echo "$SECRET2"
data/bin/tag DELETED
@@ -1,16 +0,0 @@
1
- #!/bin/bash
2
- # tags a commit, asking for input when needed
3
-
4
- if [ -n "$1" ]; then
5
- tag="$1"
6
- else
7
- tag=$(grep -o "'[0-9.]*'" ops_team.gemspec | sed "s/'//g")
8
- if [ -z "$tag" ]; then
9
- read -p "Enter tag value: " tag
10
- fi
11
- fi
12
-
13
- comment="Tagging $tag for release"
14
- echo "Tagging '$tag' with comment '$comment'..."
15
- git tag -a "$tag" -m "$comment"
16
- git push origin "$tag"
data/etc/ops.template.yml DELETED
@@ -1,13 +0,0 @@
1
- dependencies:
2
- # e.g.
3
- # brew:
4
- # - docker-compose
5
- # - docker
6
- # - curl
7
- actions:
8
- start:
9
- command: docker-compose up -d
10
- description: starts the service
11
- stop:
12
- command: docker-compose down
13
- description: stops the service
@@ -1,37 +0,0 @@
1
- dependencies:
2
- gem:
3
- - bundler
4
- - rerun
5
- custom:
6
- - bundle
7
- actions:
8
- start:
9
- command: echo update me
10
- description: starts the app
11
- stop:
12
- command: echo update me too
13
- description: stops the app
14
- test:
15
- command: rspec
16
- alias: t
17
- description: runs unit tests
18
- test-watch:
19
- command: rerun -x ops test
20
- alias: tw
21
- description: runs unit tests every time a file changes
22
- lint:
23
- command: bundle exec rubocop --safe-auto-correct
24
- alias: l
25
- description: runs rubocop with safe autocorrect
26
- build:
27
- command: gem build *.gemspec
28
- alias: b
29
- description: builds the gem
30
- install:
31
- command: gem install `ls -t *.gem | head -n1`
32
- alias: i
33
- description: installs the gem
34
- build-and-install:
35
- command: ops build && ops install
36
- alias: bi
37
- description: builds and installs the gem
@@ -1,36 +0,0 @@
1
- dependencies:
2
- brew:
3
- - terraform
4
- apt:
5
- - terraform
6
- custom:
7
- - terraform init
8
- actions:
9
- apply:
10
- command: terraform apply
11
- alias: a
12
- description: runs 'terraform apply'
13
- apply-auto-approve:
14
- command: ops apply --auto-approve
15
- alias: aa
16
- description: runs 'terraform apply' with auto-approve
17
- destroy:
18
- command: terraform destroy
19
- alias: d
20
- description: runs 'terraform destroy'
21
- destroy-auto-approve:
22
- command: ops destroy --auto-approve
23
- alias: dd
24
- description: runs 'terraform destroy' with auto-approve
25
- plan:
26
- command: terraform plan
27
- alias: p
28
- description: runs 'terraform plan'
29
- graph:
30
- command: terraform graph | dot -T pdf -o resource_graph.pdf
31
- alias: g
32
- description: runs 'terraform graph'
33
- open-graph:
34
- command: ops graph && open resource_graph.pdf
35
- alias: og
36
- description: opens the terraform graph with the OS 'open' command