ops_team 1.21.1 → 2.0.0.rc3

Sign up to get free protection for your applications and to get access to all the features.
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