meetup-generator 1.3.0 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +33 -18
- data/lib/all_the_things.yaml +146 -42
- data/lib/meetup_generator.rb +13 -7
- data/lib/version.rb +1 -1
- data/meetup-generator.gemspec +3 -3
- data/spec/meetup_generator_spec.rb +7 -4
- metadata +31 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 116c254697ceae927a6b35c660f1d1c613488d8bf98778ee7c1234c2e5d263f2
|
4
|
+
data.tar.gz: '09362964a3a2c8bd307ce4acc101920c147f2a180e5f6dbd8367e218aebf54f9'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc0aca87060b6f0c1f3eae02bc3a2265ef587e0f79845cc4c5d637939ae93bf1413eec12afabcdb0d34afcabbc64385a2042fa670bd8610da3dbf1c340ccfcf4
|
7
|
+
data.tar.gz: 7219df2e82ef52cc0d8eb189acbb9686f6d406486760b6183c4d224a23b127e4fc72b9fedc661a09b2c89edb275c6c674c6c48fc28e3a6c908abae786caeabe2
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
meetup-generator (1.
|
4
|
+
meetup-generator (1.5.1)
|
5
5
|
puma (~> 3.12, >= 3.12.0)
|
6
6
|
sinatra (~> 2.0, >= 2.0.1)
|
7
7
|
slim (~> 4.0, >= 4.0.1)
|
@@ -9,58 +9,73 @@ PATH
|
|
9
9
|
GEM
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
|
+
addressable (2.7.0)
|
13
|
+
public_suffix (>= 2.0.2, < 5.0)
|
12
14
|
ast (2.4.0)
|
13
|
-
|
15
|
+
capybara (3.29.0)
|
16
|
+
addressable
|
17
|
+
mini_mime (>= 0.1.3)
|
18
|
+
nokogiri (~> 1.8)
|
19
|
+
rack (>= 1.6.0)
|
20
|
+
rack-test (>= 0.6.3)
|
21
|
+
regexp_parser (~> 1.5)
|
22
|
+
xpath (~> 3.2)
|
23
|
+
jaro_winkler (1.5.3)
|
24
|
+
mini_mime (1.0.2)
|
14
25
|
mini_portile2 (2.4.0)
|
15
|
-
minitest (5.
|
26
|
+
minitest (5.12.0)
|
16
27
|
mustermann (1.0.3)
|
17
|
-
nokogiri (1.10.
|
28
|
+
nokogiri (1.10.4)
|
18
29
|
mini_portile2 (~> 2.4.0)
|
19
30
|
parallel (1.17.0)
|
20
|
-
parser (2.6.
|
31
|
+
parser (2.6.4.1)
|
21
32
|
ast (~> 2.4.0)
|
33
|
+
public_suffix (4.0.1)
|
22
34
|
puma (3.12.1)
|
23
35
|
rack (2.0.7)
|
24
|
-
rack-protection (2.0.
|
36
|
+
rack-protection (2.0.7)
|
25
37
|
rack
|
26
38
|
rack-test (1.1.0)
|
27
39
|
rack (>= 1.0, < 3)
|
28
40
|
rainbow (3.0.0)
|
29
|
-
rake (12.3.
|
30
|
-
|
41
|
+
rake (12.3.3)
|
42
|
+
regexp_parser (1.6.0)
|
43
|
+
rubocop (0.74.0)
|
31
44
|
jaro_winkler (~> 1.5.1)
|
32
45
|
parallel (~> 1.10)
|
33
46
|
parser (>= 2.6)
|
34
47
|
rainbow (>= 2.2.2, < 4.0)
|
35
48
|
ruby-progressbar (~> 1.7)
|
36
49
|
unicode-display_width (>= 1.4.0, < 1.7)
|
37
|
-
rubocop-performance (1.
|
38
|
-
rubocop (>= 0.
|
39
|
-
ruby-progressbar (1.10.
|
40
|
-
sinatra (2.0.
|
50
|
+
rubocop-performance (1.4.1)
|
51
|
+
rubocop (>= 0.71.0)
|
52
|
+
ruby-progressbar (1.10.1)
|
53
|
+
sinatra (2.0.7)
|
41
54
|
mustermann (~> 1.0)
|
42
55
|
rack (~> 2.0)
|
43
|
-
rack-protection (= 2.0.
|
56
|
+
rack-protection (= 2.0.7)
|
44
57
|
tilt (~> 2.0)
|
45
58
|
slim (4.0.1)
|
46
59
|
temple (>= 0.7.6, < 0.9)
|
47
60
|
tilt (>= 2.0.6, < 2.1)
|
48
|
-
temple (0.8.
|
49
|
-
tilt (2.0.
|
61
|
+
temple (0.8.2)
|
62
|
+
tilt (2.0.10)
|
50
63
|
unicode-display_width (1.6.0)
|
64
|
+
xpath (3.2.0)
|
65
|
+
nokogiri (~> 1.8)
|
51
66
|
|
52
67
|
PLATFORMS
|
53
68
|
ruby
|
54
69
|
|
55
70
|
DEPENDENCIES
|
56
71
|
bundler (~> 2.0)
|
72
|
+
capybara (~> 3.29)
|
57
73
|
meetup-generator!
|
58
74
|
minitest (~> 5.11, >= 5.11.0)
|
59
|
-
nokogiri (~> 1.10)
|
60
75
|
rack-test (~> 1.1)
|
61
76
|
rake (~> 12.3, >= 12.3.0)
|
62
|
-
rubocop (~> 0.
|
77
|
+
rubocop (~> 0.71)
|
63
78
|
rubocop-performance (~> 1.3)
|
64
79
|
|
65
80
|
BUNDLED WITH
|
66
|
-
2.0.
|
81
|
+
2.0.2
|
data/lib/all_the_things.yaml
CHANGED
@@ -21,6 +21,7 @@
|
|
21
21
|
- Containeriz
|
22
22
|
- CRI-O
|
23
23
|
- Crictl
|
24
|
+
- Cryptojack
|
24
25
|
- De-Risk
|
25
26
|
- DDOS
|
26
27
|
- Detun
|
@@ -35,6 +36,7 @@
|
|
35
36
|
- Enabl
|
36
37
|
- Fork
|
37
38
|
- Gamify
|
39
|
+
- Generat
|
38
40
|
- Graph
|
39
41
|
- Hack
|
40
42
|
- Hand Craft
|
@@ -101,33 +103,35 @@
|
|
101
103
|
- Bosh
|
102
104
|
- Boto
|
103
105
|
- Bower
|
106
|
+
- Brigade
|
107
|
+
- Buildkite
|
104
108
|
- Burp
|
105
|
-
- Burpsuite
|
106
109
|
- Burp Clickbandit
|
107
110
|
- Burp Infiltrator
|
108
111
|
- Burp Intruder
|
109
112
|
- Burp Scanner
|
113
|
+
- Burpsuite
|
110
114
|
- cAdvisor
|
111
115
|
- Capistrano
|
112
116
|
- Cassandra
|
113
117
|
- CDN
|
114
118
|
- Ceph
|
115
119
|
- Cernan
|
116
|
-
- cgroups
|
117
120
|
- CFEngine
|
118
|
-
-
|
121
|
+
- cgroups
|
119
122
|
ChaosKube
|
123
|
+
- Chaos Toolkit
|
120
124
|
- Chef
|
121
125
|
- Chef/Puppet
|
122
126
|
- CI/CD
|
123
127
|
- CircleCI
|
124
128
|
- Clojure
|
125
|
-
- Cloud Foundry
|
126
129
|
- Cloud9
|
127
130
|
- CloudFormation
|
131
|
+
- Cloud Foundry
|
128
132
|
- Cloudfront
|
129
|
-
- Cloudstack
|
130
133
|
- CloudSearch
|
134
|
+
- Cloudstack
|
131
135
|
- CloudTrail
|
132
136
|
- Clusterpoint
|
133
137
|
- CodeBuild
|
@@ -140,9 +144,11 @@
|
|
140
144
|
- Coherence
|
141
145
|
- Consul
|
142
146
|
- Convox
|
143
|
-
-
|
144
|
-
- Couchbase
|
147
|
+
- CoreDNS
|
145
148
|
- CoreOS
|
149
|
+
- Couchbase
|
150
|
+
- CouchDB
|
151
|
+
- CRI-O
|
146
152
|
- Crossplane
|
147
153
|
- Crystal
|
148
154
|
- Cucumber
|
@@ -150,9 +156,9 @@
|
|
150
156
|
- DalmatinerDB
|
151
157
|
- Dapper
|
152
158
|
- Dart
|
159
|
+
- Data Lake
|
153
160
|
- Dataloop
|
154
161
|
- Data Pond
|
155
|
-
- Data Lake
|
156
162
|
- Deep Learning
|
157
163
|
- Deis
|
158
164
|
- Device Farm
|
@@ -162,6 +168,7 @@
|
|
162
168
|
- Dockersh
|
163
169
|
- Dokku
|
164
170
|
- Doozer
|
171
|
+
- Draft
|
165
172
|
- Dropwizard
|
166
173
|
- Druid
|
167
174
|
- Dubbo
|
@@ -169,18 +176,18 @@
|
|
169
176
|
- Dynatrace
|
170
177
|
- EC2
|
171
178
|
- ECS
|
172
|
-
- EFS
|
173
179
|
- "Edge Rabbit"
|
174
|
-
-
|
180
|
+
- EFS
|
175
181
|
- Elasticache
|
182
|
+
- "Elastic Beanstalk"
|
176
183
|
- Elasticsearch
|
177
184
|
- Elixir
|
185
|
+
- ELK
|
178
186
|
- ember.js
|
179
187
|
- EMR
|
180
188
|
- Envoy
|
181
|
-
- etcd
|
182
|
-
- ELK
|
183
189
|
- Erlang
|
190
|
+
- etcd
|
184
191
|
- Express
|
185
192
|
- Fabric
|
186
193
|
- Fabric8
|
@@ -192,8 +199,8 @@
|
|
192
199
|
- Fleet
|
193
200
|
- Flink
|
194
201
|
- Flocker
|
195
|
-
- Flume
|
196
202
|
- fluentd
|
203
|
+
- Flume
|
197
204
|
- Flynn.io
|
198
205
|
- Fog
|
199
206
|
- Foodcritic
|
@@ -225,13 +232,15 @@
|
|
225
232
|
- Gulp
|
226
233
|
- Habitat
|
227
234
|
- Hadoop
|
228
|
-
-
|
235
|
+
- Harbor
|
229
236
|
- Haskell
|
237
|
+
- Hazelcast
|
230
238
|
- HBase
|
231
239
|
- Heapster
|
232
240
|
- Heartbeat
|
233
241
|
- Helm
|
234
242
|
- Heroku
|
243
|
+
- Heron
|
235
244
|
- Hubot
|
236
245
|
- hyperconvergence
|
237
246
|
- Hystrix
|
@@ -239,10 +248,12 @@
|
|
239
248
|
- Immutable Infrastructure
|
240
249
|
- Impala
|
241
250
|
- IndexedDB
|
251
|
+
- Infinispan
|
242
252
|
- InfluxDB
|
243
253
|
- IntelliJ
|
244
|
-
- io.js
|
245
254
|
- IO
|
255
|
+
- io.js
|
256
|
+
- IronDB
|
246
257
|
- Istio
|
247
258
|
- Jaeger
|
248
259
|
- Jekyll
|
@@ -251,20 +262,36 @@
|
|
251
262
|
- JRuby
|
252
263
|
- JSON
|
253
264
|
- Juju
|
265
|
+
- k3s
|
254
266
|
- Kafka
|
255
267
|
- KairosDB
|
256
268
|
- Kanban
|
269
|
+
- Kaniko
|
270
|
+
- Kiali
|
257
271
|
- Kibana
|
272
|
+
- Kind
|
258
273
|
- Kinesis
|
259
274
|
- kitchen-docker
|
260
275
|
- knife Plugins
|
276
|
+
- Knox
|
261
277
|
- Kong
|
278
|
+
- Kops
|
279
|
+
- KrakenD
|
262
280
|
- Kube
|
281
|
+
- Kube-Bench
|
282
|
+
- KubeEdge
|
263
283
|
- Kubeform
|
284
|
+
- Kube Hunter
|
264
285
|
- Kubeless
|
265
286
|
- Kubelet
|
287
|
+
- KubeOne
|
288
|
+
- Kubermatic
|
266
289
|
- Kubernetes
|
290
|
+
- kube-spawn
|
267
291
|
- KubeSpray
|
292
|
+
- Kubic
|
293
|
+
- Kubicorn
|
294
|
+
- kublr
|
268
295
|
- Kudu
|
269
296
|
- Kyma
|
270
297
|
- Lambda
|
@@ -276,6 +303,7 @@
|
|
276
303
|
- Linkerd
|
277
304
|
- Linux
|
278
305
|
- Lisp
|
306
|
+
- Litmus
|
279
307
|
- Logspout
|
280
308
|
- Logstash
|
281
309
|
- LunchBadger
|
@@ -289,6 +317,7 @@
|
|
289
317
|
- MariaDB
|
290
318
|
- MEAN
|
291
319
|
- Memchached
|
320
|
+
- MemSQL
|
292
321
|
- Mesh
|
293
322
|
- Mesos
|
294
323
|
- Mesos-Consul
|
@@ -300,6 +329,7 @@
|
|
300
329
|
- monads
|
301
330
|
- MongoDB
|
302
331
|
- monorepo
|
332
|
+
- MooseFS
|
303
333
|
- Mountebank
|
304
334
|
- Mutable Infrastructure
|
305
335
|
- Nancy
|
@@ -307,15 +337,18 @@
|
|
307
337
|
- Nashorn
|
308
338
|
- Neo4J
|
309
339
|
- Neptune
|
340
|
+
- NewRelic
|
310
341
|
- nginx
|
342
|
+
- NiFi
|
311
343
|
- node.js
|
312
344
|
- Nomad
|
313
|
-
-
|
314
|
-
- NewRelic
|
345
|
+
- Noms
|
315
346
|
- NoOps
|
316
347
|
- NoSQL
|
348
|
+
- npm
|
317
349
|
- Nuclio
|
318
350
|
- NuGet
|
351
|
+
- NuoDB
|
319
352
|
- OCaml
|
320
353
|
- Okta
|
321
354
|
- OpenFaaS
|
@@ -323,12 +356,14 @@
|
|
323
356
|
- OpenTracing
|
324
357
|
- OpenWhisk
|
325
358
|
- OpsWorks
|
359
|
+
- OrientDB
|
326
360
|
- PaaSta
|
327
361
|
- Packer
|
328
362
|
- Packetbeat
|
329
363
|
- Papertrail
|
330
364
|
- Perl
|
331
365
|
- Phoenix
|
366
|
+
- Pilosa
|
332
367
|
- Powerful Seal
|
333
368
|
- Project Atomic
|
334
369
|
- Prometheus
|
@@ -355,15 +390,16 @@
|
|
355
390
|
- RethinkDB
|
356
391
|
- Riak
|
357
392
|
- Rightscale
|
393
|
+
- rkt
|
358
394
|
- Rocket
|
359
395
|
- Rollbar
|
360
396
|
- Rook
|
361
|
-
- rkt
|
362
397
|
- RSpec
|
363
398
|
- Ruby
|
364
399
|
- Runscope
|
365
400
|
- Rust
|
366
401
|
- S3
|
402
|
+
- SageMaker
|
367
403
|
- Salt
|
368
404
|
- SaltStack
|
369
405
|
- Scala
|
@@ -391,9 +427,11 @@
|
|
391
427
|
- Snowball
|
392
428
|
- SNS
|
393
429
|
- Solr
|
430
|
+
- SPIFFE
|
431
|
+
- Spire
|
394
432
|
- Spread
|
395
|
-
- Squash
|
396
433
|
- SQS
|
434
|
+
- Squash
|
397
435
|
- StackStorm
|
398
436
|
- statsd
|
399
437
|
- 'Step Functions'
|
@@ -401,14 +439,19 @@
|
|
401
439
|
- Sublime Text
|
402
440
|
- Supergiant
|
403
441
|
- Swarm
|
442
|
+
- Symplegma
|
404
443
|
- Sysdig
|
405
444
|
- systemd
|
406
445
|
- Telegraf
|
446
|
+
- Teleport
|
407
447
|
- Telepresence
|
408
448
|
- Terraform
|
409
449
|
- Test Kitchen
|
450
|
+
- Thanos
|
410
451
|
- Thrift
|
411
452
|
- TICK stack
|
453
|
+
- TiDB
|
454
|
+
- TiKV
|
412
455
|
- Timeseries Database
|
413
456
|
- TokyoTyrant
|
414
457
|
- Toxiproxy
|
@@ -417,12 +460,15 @@
|
|
417
460
|
- Trickster
|
418
461
|
- Triton
|
419
462
|
- Tsuru
|
463
|
+
- TUF
|
464
|
+
- Tyk
|
420
465
|
- Ubernetes
|
421
466
|
- Ubuntu
|
422
467
|
- unikernel
|
423
468
|
- Vagrant
|
424
469
|
- Vault
|
425
470
|
- Velocity
|
471
|
+
- Vitess
|
426
472
|
- Wangle
|
427
473
|
- Wavefront
|
428
474
|
- Weave
|
@@ -437,8 +483,10 @@
|
|
437
483
|
- ZFS
|
438
484
|
- Zipkin
|
439
485
|
- Zookeeper
|
486
|
+
- Zuul
|
440
487
|
|
441
488
|
:service:
|
489
|
+
- AIOps
|
442
490
|
- ChatOps
|
443
491
|
- Cloud
|
444
492
|
- Containers
|
@@ -496,9 +544,12 @@
|
|
496
544
|
- Guerilla User Testing
|
497
545
|
- Hipster Batch Paradigm
|
498
546
|
- Leanness
|
547
|
+
- Incident Response
|
499
548
|
- Innovation Initiatives
|
549
|
+
- Monitoring
|
500
550
|
- Multiregion Dataflows
|
501
551
|
- MVP
|
552
|
+
- Observability
|
502
553
|
- Patterns
|
503
554
|
- Polyglot Persistence
|
504
555
|
- ROI
|
@@ -508,6 +559,7 @@
|
|
508
559
|
- TCO
|
509
560
|
- Threat Model
|
510
561
|
- Uptime
|
562
|
+
- Value Stream Network
|
511
563
|
- VC Appeal
|
512
564
|
- Velocity
|
513
565
|
|
@@ -612,6 +664,7 @@
|
|
612
664
|
- Bullshit
|
613
665
|
- Copying-Google
|
614
666
|
- CV
|
667
|
+
- "CV++"
|
615
668
|
- Data
|
616
669
|
- Datensparsamkeit
|
617
670
|
- FOMO
|
@@ -641,36 +694,65 @@
|
|
641
694
|
- Urgency
|
642
695
|
- "Whatever's-New"
|
643
696
|
- What-Everyone-Else-is-Doing
|
697
|
+
- What-We-Think-Everyone-Else-is-Doing
|
644
698
|
- Wheel-Reinvention
|
645
699
|
|
646
700
|
:adjective:
|
701
|
+
- "12 Factor"
|
702
|
+
- "On-Premise"
|
703
|
+
- Agile
|
647
704
|
- Artisinal
|
705
|
+
- Awesome
|
648
706
|
- Batteries-Included
|
649
707
|
- Beautiful
|
708
|
+
- Blameless
|
709
|
+
- Chaotic
|
650
710
|
- Cloud-Agnostic
|
651
711
|
- Cloud-Native
|
652
|
-
- Craft
|
653
712
|
- Community-Driven
|
654
713
|
- Community-Focused
|
714
|
+
- Composable
|
715
|
+
- Container-Ready
|
716
|
+
- Continuous
|
717
|
+
- Craft
|
718
|
+
- De-Siloed
|
655
719
|
- Declarative
|
720
|
+
- Decoupled
|
721
|
+
- Developer-Driven
|
722
|
+
- Developer-Friendly
|
656
723
|
- End-to-End
|
724
|
+
- Entity-Centric
|
725
|
+
- Functional
|
726
|
+
- Game-Changing
|
657
727
|
- Hand-Crafted
|
728
|
+
- Hyperscale
|
658
729
|
- Immutable
|
659
|
-
-
|
660
|
-
-
|
730
|
+
- Insightful
|
731
|
+
- Integrated
|
732
|
+
- Lean
|
733
|
+
- Macro-Serviced
|
661
734
|
- Micro-Serviced
|
735
|
+
- Multi-Dimensional
|
662
736
|
- Nano-Serviced
|
737
|
+
- Observable
|
738
|
+
- Opinionated
|
739
|
+
- Paradigm-Shifting
|
663
740
|
- Public/Private
|
741
|
+
- Scalable
|
664
742
|
- Self-Service
|
665
|
-
- Service-Oriented
|
666
743
|
- Serverful
|
667
744
|
- Serverless
|
745
|
+
- Service-Oriented
|
746
|
+
- Siloed
|
747
|
+
- Soup-to-Nuts
|
668
748
|
- Stateful
|
669
749
|
- Stateless
|
670
|
-
-
|
750
|
+
- Transformative
|
751
|
+
- Webscale
|
671
752
|
|
672
753
|
:panacea:
|
673
754
|
- AI
|
755
|
+
- AIOps
|
674
756
|
- Containers
|
675
757
|
- Deep Learning
|
676
758
|
- DevOps
|
@@ -681,9 +763,9 @@
|
|
681
763
|
- Kubernetes
|
682
764
|
- Machine Learning
|
683
765
|
- Serverless
|
684
|
-
- Service Mesh Architecture
|
766
|
+
- "Service Mesh Architecture"
|
685
767
|
- SREs
|
686
|
-
- The Blockchain
|
768
|
+
- "The Blockchain"
|
687
769
|
- "The Next Version"
|
688
770
|
- Unikernels
|
689
771
|
|
@@ -691,6 +773,7 @@
|
|
691
773
|
- "A Language You Probably Haven't Heard Of"
|
692
774
|
- "C++ 11"
|
693
775
|
- Clojure
|
776
|
+
- Clojurescript
|
694
777
|
- Coffeescript
|
695
778
|
- Crystal
|
696
779
|
- Elixir
|
@@ -702,24 +785,29 @@
|
|
702
785
|
- Julia
|
703
786
|
- Kotlin
|
704
787
|
- OCaml
|
788
|
+
- "Perl 6"
|
705
789
|
- Powershell
|
706
790
|
- "Python 3"
|
707
791
|
- Racket
|
792
|
+
- Ruby
|
708
793
|
- Rust
|
709
794
|
- Scala
|
710
795
|
- Typescript
|
711
796
|
|
712
797
|
:something_ops:
|
798
|
+
- Biz
|
713
799
|
- Chat
|
714
800
|
- Dev
|
715
801
|
- Git
|
716
802
|
- 'No'
|
717
803
|
- Sec
|
804
|
+
- Slack
|
718
805
|
- Test
|
719
806
|
|
720
807
|
:template:
|
721
808
|
- "Regurgited Half-Understood Blog Post"
|
722
809
|
- "Enabling No-Ops with Virtual %tech%"
|
810
|
+
- "Enabling %adjective% %FNOPS% with Virtual %tech%"
|
723
811
|
- "%verb%ed %tech% == #Awesomesauce"
|
724
812
|
- "%verb%ing All of the Things with %tech%"
|
725
813
|
- "I Don't Know Much About %tech% or %tech% But I'm Going to Talk About Them Anyway"
|
@@ -728,12 +816,12 @@
|
|
728
816
|
- "%tech% for %tech% users, and How to Avoid %verb%ing Your %tech% Layer"
|
729
817
|
- "%verb%ing %tech% with %tech% for %skill_level%s"
|
730
818
|
- "Why %tech% is %is_not% the new %tech%"
|
731
|
-
- "RAND10 Lessons from %verb%ing %verb%ed %tech%"
|
732
|
-
- "How we %verb%ed %tech% with %tech% in RAND100 %time%"
|
733
|
-
- "RAND20 Things You Should %is_not% be Doing with %tech% to Enable %service% as a Service"
|
734
|
-
- "From %tech% n00b to %tech% %verb%ing Jedi in RAND5 %time%"
|
819
|
+
- "%RAND10% Lessons from %verb%ing %verb%ed %tech%"
|
820
|
+
- "How we %verb%ed %tech% with %tech% in %RAND100% %time%"
|
821
|
+
- "%RAND20% Things You Should %is_not% be Doing with %tech% to Enable %service% as a Service"
|
822
|
+
- "From %tech% n00b to %tech% %verb%ing Jedi in %RAND5% %time%"
|
735
823
|
- "Pimp My %tech%. %tech% is the Answer, What's the Question?"
|
736
|
-
- "How We %verb%ed RAND40
|
824
|
+
- "How We %verb%ed %RAND40%% of our Infrastructure Overnight with %tech%"
|
737
825
|
- "BANG! And the %tech% is Gone! The Future is %verb%ed %tech%"
|
738
826
|
- "How We Use %tech% to %extreme% the Internet of Things"
|
739
827
|
- "We %verb%ed our %tech%. Mind = Blown"
|
@@ -745,21 +833,22 @@
|
|
745
833
|
- "%quantifier% as Code: Ready for the Revolution?"
|
746
834
|
- "A Complicated Way to do Something Unnecessary Which Does Not Work"
|
747
835
|
- "Culture: Don't Do it If it's Hard or Boring"
|
748
|
-
- "Something People Have Done Since
|
836
|
+
- "Something People Have Done Since 198%RAND9%, but with a New Name"
|
749
837
|
- "How We %verb%ed Our %service% with %tech% FTW!"
|
750
838
|
- "Still Using %tech%? Allow Me to Enlighten You"
|
751
|
-
- "I First Heard about %tech% RAND5 Days Ago, and Now I'm an Expert"
|
839
|
+
- "I First Heard about %tech% %RAND5% Days Ago, and Now I'm an Expert"
|
752
840
|
- "Fifteen Minutes of Ignorant Hubris"
|
753
841
|
- "Buzzword Blizzard: %tech% + %tech% + %tech% + %tech%"
|
754
842
|
- "How We Do What %company% Do, but on a Tiny Scale, and Wrong"
|
755
|
-
- "EC2 at Scale: RAND40 instances and Counting!"
|
843
|
+
- "EC2 at Scale: %RAND40% instances and Counting!"
|
844
|
+
- "From Pets to Cattle with %verb% and %verb%"
|
756
845
|
- "DevOps and Objet Trouve: If it's Good Enough to be on Github, it's Good Enough for Production"
|
757
846
|
- "%driver% Driven Development 101"
|
758
847
|
- "I'm All About That Rate: Making Mo Chedda by Building Things No One Needs"
|
759
848
|
- "Ticking the Boxes: You Can't Automate All of the Things if You Aren't Using All of the Things"
|
760
849
|
- "How We Moved from Puppet to Chef to Ansible to Salt to CFEngine then Back to Ansible then Chef Again then Briefly Itamae then Packered AMIs then Masterless Puppet then Chef then a Different Chef Setup then Puppet"
|
761
850
|
- "%verb%ing %tech% Makes for Awesome %driver%-driven Infrastructure"
|
762
|
-
- "How a %tech%/%tech% Mash-Up Shaved RAND50 Seconds off Our Deployment Times"
|
851
|
+
- "How a %tech%/%tech% Mash-Up Shaved %RAND50% Seconds off Our Deployment Times"
|
763
852
|
- "Containers: or How I Swapped a Simple Packaging Problem for a Complex Orchestration Problem"
|
764
853
|
- "%tech% Necromancy for Full-Stack Nirvana"
|
765
854
|
- "Wow Very %tech%. So %tech%. Such %verb%ed"
|
@@ -768,15 +857,15 @@
|
|
768
857
|
- "We Started a Shitty Company"
|
769
858
|
- "We Have a DevOps Consultancy and We Don't Know What We're Doing"
|
770
859
|
- "Dockerizing Dockerized Docker with Docker for Docker Users"
|
771
|
-
- "How we Spent RAND8 Months Building Our Own Version of a Service We Could Buy for $6/month"
|
772
|
-
- "How we Spent RAND3 Years Building Our Own Version of a Service We Could Buy for $6/month"
|
860
|
+
- "How we Spent %RAND8% Months Building Our Own Version of a Service We Could Buy for $6/month"
|
861
|
+
- "How we Spent %RAND3% Years Building Our Own Version of a Service We Could Buy for $6/month"
|
773
862
|
- "Thinly Disguised Sales Pitch"
|
774
863
|
- "Roll Your Own Monitoring with %tech%, %tech%, %tech%, %tech%, %tech%, %tech%, %tech%, %tech% and %tech%"
|
775
864
|
- "How This Thing We Built Would Work if it Worked"
|
776
865
|
- "If Heath Robinson Deployed an apt Package"
|
777
866
|
- "We Put %tech% in our %tech%: You Won't Believe What Happened Next"
|
778
|
-
- "RAND10 Things Only a DevOps Understands"
|
779
|
-
- "RAND10 %tech% Secrets %company% Don't Want You to Know"
|
867
|
+
- "%RAND10% Things Only a DevOps Understands"
|
868
|
+
- "%RAND10% %tech% Secrets %company% Don't Want You to Know"
|
780
869
|
- "When You Have More Github Repos than Users"
|
781
870
|
- "Large-Scale %tech% Anti-Patterns Will %extreme% Your %service%"
|
782
871
|
- "Bro, Do You Even %tech%?"
|
@@ -794,7 +883,7 @@
|
|
794
883
|
- "Repeatedly Saying 'on premise' Without Understanding What it Means"
|
795
884
|
- "'You Have 15 Seconds to Comply' and other '80s Cliches stitched Loosely Together"
|
796
885
|
- "%panacea% Will Fix Everything"
|
797
|
-
- "I Have RAND18 Months' Experience But I Know Everything"
|
886
|
+
- "I Have %RAND18% Months' Experience But I Know Everything"
|
798
887
|
- "We Were the First People to Ever Encounter any of these Problems"
|
799
888
|
- "I Work for Google, So I Know Everything"
|
800
889
|
- "I Used to Work for Google, So I Know Everything"
|
@@ -802,13 +891,28 @@
|
|
802
891
|
- "Like, Diversity and Stuff?"
|
803
892
|
- "Everyone Else Does Everything Wrong"
|
804
893
|
- "Validating Laziness by Declaring it 'Best Practice'"
|
805
|
-
- "Our FNOPS Journey"
|
806
|
-
- "From FNOPS to FNOPS"
|
894
|
+
- "Our %FNOPS% Journey"
|
895
|
+
- "From %FNOPS% to %FNOPS%"
|
807
896
|
- "The Answer is More Code, What's the Question?"
|
808
897
|
- "We Rewrote Everything in %language% and Now Nothing Works"
|
809
898
|
- "We Rewrote Everything in %language% for No Real Reason"
|
810
899
|
- "You Still Use %language%? For Real?"
|
811
900
|
- "Bearded Manchild"
|
901
|
+
- "If You Like YAML You'll LOVE Kubernetes"
|
902
|
+
- "A Thing I Did Only Because I Could do a Talk About It"
|
903
|
+
- "A System Which Can Serve Ten Million Users (but only has six hundred)"
|
904
|
+
- "%tech% Considered Harmful and other Trite Clichés"
|
905
|
+
- "%tech%, %tech% and %tech% Walk into a Bar"
|
906
|
+
- "%adjective% %tech% at Scale"
|
907
|
+
- "%adjective% %tech% for Fun and Profit"
|
908
|
+
- "%verb%ing the %tech% for Fun and Profit"
|
909
|
+
- "Winter is Coming: Level Up Your %panacea%"
|
910
|
+
- "%WORD%Ops"
|
911
|
+
- "What I Talk about When I Talk about %tech%"
|
912
|
+
- "What I Talk about When I Talk about %verb%ing"
|
913
|
+
- "Luke, I Am Your %verb%er"
|
914
|
+
- "An %adjective% Mash-Up of %tech%, %tech%, %tech% and %tech%"
|
915
|
+
- "Reading out the Slides"
|
812
916
|
|
813
917
|
#-------------------------------------------------------------------------
|
814
918
|
# This block relates to the names and roles of the people doing the
|
data/lib/meetup_generator.rb
CHANGED
@@ -44,7 +44,7 @@ class MeetupGenerator
|
|
44
44
|
end
|
45
45
|
|
46
46
|
def title(template = random_template)
|
47
|
-
replace_number(replace_ops(replace_things(template)))
|
47
|
+
replace_word(replace_number(replace_ops(replace_things(template))))
|
48
48
|
end
|
49
49
|
|
50
50
|
def random_template(number = 1)
|
@@ -78,23 +78,29 @@ class MeetupGenerator
|
|
78
78
|
end
|
79
79
|
|
80
80
|
def replace_things(template)
|
81
|
-
return template unless template =~
|
81
|
+
return template unless template =~ /%[a-z_]+%/
|
82
82
|
|
83
|
-
replace_things(template.sub(/%(
|
83
|
+
replace_things(template.sub(/%([a-z_]+)%/) do
|
84
84
|
lib[Regexp.last_match(1).to_sym].sample
|
85
85
|
end)
|
86
86
|
end
|
87
87
|
|
88
|
+
def replace_word(template)
|
89
|
+
return template unless template.include?('%WORD%')
|
90
|
+
|
91
|
+
replace_word(template.sub('%WORD%', words.sample.capitalize))
|
92
|
+
end
|
93
|
+
|
88
94
|
def replace_ops(template)
|
89
|
-
return template unless template.include?('FNOPS')
|
95
|
+
return template unless template.include?('%FNOPS%')
|
90
96
|
|
91
|
-
replace_ops(template.sub(
|
97
|
+
replace_ops(template.sub('%FNOPS%', something_ops))
|
92
98
|
end
|
93
99
|
|
94
100
|
def replace_number(template)
|
95
|
-
return template unless template =~
|
101
|
+
return template unless template =~ /%RAND\d+%/
|
96
102
|
|
97
|
-
replace_number(template.sub(
|
103
|
+
replace_number(template.sub(/%RAND(\d+)%/) do
|
98
104
|
rand(2..Regexp.last_match(1).to_i).to_s
|
99
105
|
end)
|
100
106
|
end
|
data/lib/version.rb
CHANGED
data/meetup-generator.gemspec
CHANGED
@@ -28,12 +28,12 @@ Gem::Specification.new do |gem|
|
|
28
28
|
gem.add_runtime_dependency 'slim', '~> 4.0', '>= 4.0.1'
|
29
29
|
|
30
30
|
gem.add_development_dependency 'bundler', '~> 2.0'
|
31
|
+
gem.add_development_dependency 'capybara', '~> 3.29'
|
31
32
|
gem.add_development_dependency 'minitest', '~> 5.11', '>= 5.11.0'
|
32
|
-
gem.add_development_dependency 'nokogiri', '~> 1.10'
|
33
33
|
gem.add_development_dependency 'rack-test', '~> 1.1'
|
34
34
|
gem.add_development_dependency 'rake', '~> 12.3', '>= 12.3.0'
|
35
|
-
gem.add_development_dependency 'rubocop', '~> 0.
|
35
|
+
gem.add_development_dependency 'rubocop', '~> 0.71'
|
36
36
|
gem.add_development_dependency 'rubocop-performance', '~> 1.3'
|
37
37
|
|
38
|
-
gem.required_ruby_version = Gem::Requirement.new('>= 2.
|
38
|
+
gem.required_ruby_version = Gem::Requirement.new('>= 2.4.0')
|
39
39
|
end
|
@@ -13,7 +13,7 @@ THINGS = { food_style: %w[artisan],
|
|
13
13
|
job_title: ['Without Portfolio'],
|
14
14
|
tech: %w[Ruby],
|
15
15
|
something_ops: %w[Dev Test No],
|
16
|
-
template: ['RAND20 %tech% things'] }.freeze
|
16
|
+
template: ['%RAND20% %tech% things'] }.freeze
|
17
17
|
|
18
18
|
class TestMeetupGenerator < Minitest::Test
|
19
19
|
attr_reader :mg
|
@@ -64,7 +64,6 @@ class GibletsTest < MiniTest::Test
|
|
64
64
|
assert_instance_of(String, x)
|
65
65
|
assert !x.empty?
|
66
66
|
refute_match(/%\w+%/, x)
|
67
|
-
refute_match(/RAND/, x)
|
68
67
|
end
|
69
68
|
|
70
69
|
def test_agenda
|
@@ -110,6 +109,10 @@ class GibletsTest < MiniTest::Test
|
|
110
109
|
assert_equal('cabbage.io', m.company)
|
111
110
|
end
|
112
111
|
|
112
|
+
def test_replace_word
|
113
|
+
assert_equal('LeadswingerOps', m.replace_word('%WORD%Ops'))
|
114
|
+
end
|
115
|
+
|
113
116
|
def test_refreshment
|
114
117
|
assert_equal('artisan flatbread', m.refreshment)
|
115
118
|
end
|
@@ -120,13 +123,13 @@ class GibletsTest < MiniTest::Test
|
|
120
123
|
end
|
121
124
|
|
122
125
|
def test_replace_ops
|
123
|
-
x = m.replace_ops('From FNOPS to FNOPS')
|
126
|
+
x = m.replace_ops('From %FNOPS% to %FNOPS%')
|
124
127
|
assert_instance_of(String, x)
|
125
128
|
assert_match(/From \w+Ops to \w+Ops$/, x)
|
126
129
|
end
|
127
130
|
|
128
131
|
def test_replace_number
|
129
|
-
x = m.replace_number('RAND9 years and RAND5 months')
|
132
|
+
x = m.replace_number('%RAND9% years and %RAND5% months')
|
130
133
|
assert_instance_of(String, x)
|
131
134
|
assert_match(/\d years and \d months/, x)
|
132
135
|
end
|
metadata
CHANGED
@@ -1,35 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: meetup-generator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Fisher
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: puma
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 3.12.0
|
20
17
|
- - "~>"
|
21
18
|
- !ruby/object:Gem::Version
|
22
19
|
version: '3.12'
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 3.12.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
|
-
- - ">="
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 3.12.0
|
30
27
|
- - "~>"
|
31
28
|
- !ruby/object:Gem::Version
|
32
29
|
version: '3.12'
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 3.12.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: sinatra
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -85,39 +85,39 @@ dependencies:
|
|
85
85
|
- !ruby/object:Gem::Version
|
86
86
|
version: '2.0'
|
87
87
|
- !ruby/object:Gem::Dependency
|
88
|
-
name:
|
88
|
+
name: capybara
|
89
89
|
requirement: !ruby/object:Gem::Requirement
|
90
90
|
requirements:
|
91
|
-
- - ">="
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: 5.11.0
|
94
91
|
- - "~>"
|
95
92
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
93
|
+
version: '3.29'
|
97
94
|
type: :development
|
98
95
|
prerelease: false
|
99
96
|
version_requirements: !ruby/object:Gem::Requirement
|
100
97
|
requirements:
|
101
|
-
- - ">="
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: 5.11.0
|
104
98
|
- - "~>"
|
105
99
|
- !ruby/object:Gem::Version
|
106
|
-
version: '
|
100
|
+
version: '3.29'
|
107
101
|
- !ruby/object:Gem::Dependency
|
108
|
-
name:
|
102
|
+
name: minitest
|
109
103
|
requirement: !ruby/object:Gem::Requirement
|
110
104
|
requirements:
|
111
105
|
- - "~>"
|
112
106
|
- !ruby/object:Gem::Version
|
113
|
-
version: '
|
107
|
+
version: '5.11'
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 5.11.0
|
114
111
|
type: :development
|
115
112
|
prerelease: false
|
116
113
|
version_requirements: !ruby/object:Gem::Requirement
|
117
114
|
requirements:
|
118
115
|
- - "~>"
|
119
116
|
- !ruby/object:Gem::Version
|
120
|
-
version: '
|
117
|
+
version: '5.11'
|
118
|
+
- - ">="
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: 5.11.0
|
121
121
|
- !ruby/object:Gem::Dependency
|
122
122
|
name: rack-test
|
123
123
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,36 +136,36 @@ dependencies:
|
|
136
136
|
name: rake
|
137
137
|
requirement: !ruby/object:Gem::Requirement
|
138
138
|
requirements:
|
139
|
-
- - ">="
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: 12.3.0
|
142
139
|
- - "~>"
|
143
140
|
- !ruby/object:Gem::Version
|
144
141
|
version: '12.3'
|
142
|
+
- - ">="
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: 12.3.0
|
145
145
|
type: :development
|
146
146
|
prerelease: false
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
148
148
|
requirements:
|
149
|
-
- - ">="
|
150
|
-
- !ruby/object:Gem::Version
|
151
|
-
version: 12.3.0
|
152
149
|
- - "~>"
|
153
150
|
- !ruby/object:Gem::Version
|
154
151
|
version: '12.3'
|
152
|
+
- - ">="
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
version: 12.3.0
|
155
155
|
- !ruby/object:Gem::Dependency
|
156
156
|
name: rubocop
|
157
157
|
requirement: !ruby/object:Gem::Requirement
|
158
158
|
requirements:
|
159
159
|
- - "~>"
|
160
160
|
- !ruby/object:Gem::Version
|
161
|
-
version: '0.
|
161
|
+
version: '0.71'
|
162
162
|
type: :development
|
163
163
|
prerelease: false
|
164
164
|
version_requirements: !ruby/object:Gem::Requirement
|
165
165
|
requirements:
|
166
166
|
- - "~>"
|
167
167
|
- !ruby/object:Gem::Version
|
168
|
-
version: '0.
|
168
|
+
version: '0.71'
|
169
169
|
- !ruby/object:Gem::Dependency
|
170
170
|
name: rubocop-performance
|
171
171
|
requirement: !ruby/object:Gem::Requirement
|
@@ -223,14 +223,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
223
223
|
requirements:
|
224
224
|
- - ">="
|
225
225
|
- !ruby/object:Gem::Version
|
226
|
-
version: 2.
|
226
|
+
version: 2.4.0
|
227
227
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
228
228
|
requirements:
|
229
229
|
- - ">="
|
230
230
|
- !ruby/object:Gem::Version
|
231
231
|
version: '0'
|
232
232
|
requirements: []
|
233
|
-
|
233
|
+
rubyforge_project:
|
234
|
+
rubygems_version: 2.7.7
|
234
235
|
signing_key:
|
235
236
|
specification_version: 4
|
236
237
|
summary: Stupid fatuous random string generatpr
|