smartcloud 0.4.4 → 0.5.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7b4fd82d9d4bff19e4ccf13550134ee76772adcf128014ffabe60875e186a293
4
- data.tar.gz: f794d1aa22b50f4448222f37320b00a1301e93054d85942b410d9e2f54287022
3
+ metadata.gz: 68cc89738e48e399cd83ff545c8a0790fb788d405e10b39b89884386525e17ff
4
+ data.tar.gz: add2311595fe17d489c2f5e0dc6142e7a4b99a0c3d90a9910d6be3b8edc7b311
5
5
  SHA512:
6
- metadata.gz: f96218c7bc601ae5a4bfd0ad9d289e432ad6ecef234280c0128a695d910f4ae9c0f42a04f04487b22c668c5346985e7a25416772e88c1e9af4b700716b56423e
7
- data.tar.gz: daef98755e7880eeb5e9b422bf6659c6c6b0eac058a4d65dea9e4cf07496e4de860432496915f62822ca38bdbb9030edbdda5c79495401ed1ab8a836389256a1
6
+ metadata.gz: 4921eb04bbb27f4672254bce33aada08c89b92b28df3aa805c8ddc562ad9f679dbce2e94d085bed3938bb021fa5ffe8778d0f0fbbb3dd3f2959926212bdabc77
7
+ data.tar.gz: 38caf894d976ce9944dff72a69a40a971d9cb62232f90404ee4ade9e897f6f89bb08328a371a098bc72e42c5233b35dc03911bb93b1aecf680db9eec4bdd7504
@@ -20,6 +20,7 @@ require 'smartcloud/user'
20
20
  require 'smartcloud/grids/elasticsearch'
21
21
  require 'smartcloud/grids/minio'
22
22
  require 'smartcloud/grids/mysql'
23
+ require 'smartcloud/grids/nextcloud'
23
24
  require 'smartcloud/grids/nginx'
24
25
  require 'smartcloud/grids/prereceiver'
25
26
  require 'smartcloud/grids/redmine'
@@ -72,6 +72,15 @@ module Smartcloud
72
72
  password: #{SecureRandom.hex(16)}
73
73
  database_name: #{SecureRandom.hex(8)}
74
74
 
75
+ nextcloud:
76
+ admin_username: #{SecureRandom.hex(8)}
77
+ admin_password: #{SecureRandom.hex(16)}
78
+ database_host: mysql
79
+ database_port: 3306
80
+ database_username: #{SecureRandom.hex(8)}_nextcloud
81
+ database_password: #{SecureRandom.hex(16)}
82
+ database_name: #{SecureRandom.hex(8)}_nextcloud
83
+
75
84
  elasticsearch:
76
85
  port: 9200
77
86
 
@@ -0,0 +1,56 @@
1
+ # The main Smartcloud Grids Minio driver
2
+ module Smartcloud
3
+ module Grids
4
+ class Nextcloud < Smartcloud::Base
5
+ def initialize
6
+ end
7
+
8
+ def self.up
9
+ if Smartcloud::Docker.running?
10
+ # Creating & Starting containers
11
+ print "-----> Creating container nextcloud ... "
12
+ if system("docker create \
13
+ --name='nextcloud' \
14
+ --env VIRTUAL_HOST=nextcloud.#{Smartcloud.config.apps_domain} \
15
+ --env LETSENCRYPT_HOST=nextcloud.#{Smartcloud.config.apps_domain} \
16
+ --env LETSENCRYPT_EMAIL=#{Smartcloud.config.sysadmin_email} \
17
+ --env LETSENCRYPT_TEST=false \
18
+ --env NEXTCLOUD_TRUSTED_DOMAINS=nextcloud.#{Smartcloud.config.apps_domain} \
19
+ --env NEXTCLOUD_ADMIN_USER=#{Smartcloud.credentials.nextcloud[:admin_username]} \
20
+ --env NEXTCLOUD_ADMIN_PASSWORD=#{Smartcloud.credentials.nextcloud[:admin_password]} \
21
+ --env MYSQL_HOST=#{Smartcloud.credentials.nextcloud[:database_host]}:#{Smartcloud.credentials.nextcloud[:database_port]} \
22
+ --env MYSQL_USER=#{Smartcloud.credentials.nextcloud[:database_username]} \
23
+ --env MYSQL_PASSWORD=#{Smartcloud.credentials.nextcloud[:database_password]} \
24
+ --env MYSQL_DATABASE=#{Smartcloud.credentials.nextcloud[:database_name]} \
25
+ --volume='#{Smartcloud.config.user_home_path}/.smartcloud/grids/grid-nextcloud/html:/var/www/html' \
26
+ --restart='always' \
27
+ --network='nginx-network' \
28
+ nextcloud:18.0.2-apache", out: File::NULL)
29
+
30
+ system("docker network connect mysql-network nextcloud")
31
+
32
+ puts "done"
33
+ print "-----> Starting container nextcloud ... "
34
+ if system("docker start nextcloud", out: File::NULL)
35
+ puts "done"
36
+ end
37
+ end
38
+ end
39
+ end
40
+
41
+ def self.down
42
+ if Smartcloud::Docker.running?
43
+ # Stopping & Removing containers - in reverse order
44
+ print "-----> Stopping container nextcloud ... "
45
+ if system("docker stop 'nextcloud'", out: File::NULL)
46
+ puts "done"
47
+ print "-----> Removing container nextcloud ... "
48
+ if system("docker rm 'nextcloud'", out: File::NULL)
49
+ puts "done"
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -191,6 +191,9 @@ module Smartcloud
191
191
  'grids/grid-mysql',
192
192
  'grids/grid-mysql/data/***',
193
193
 
194
+ 'grids/grid-nextcloud',
195
+ 'grids/grid-nextcloud/html/***',
196
+
194
197
  'grids/grid-nginx',
195
198
  'grids/grid-nginx/certificates/***',
196
199
 
@@ -233,6 +236,10 @@ module Smartcloud
233
236
  'grids/grid-mysql/data',
234
237
  'grids/grid-mysql/data/.keep',
235
238
 
239
+ 'grids/grid-nextcloud',
240
+ 'grids/grid-nextcloud/html',
241
+ 'grids/grid-nextcloud/html/.keep',
242
+
236
243
  'grids/grid-nginx',
237
244
  'grids/grid-nginx/certificates',
238
245
  'grids/grid-nginx/certificates/.keep',
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  module Smartcloud
4
- VERSION = "0.4.4".freeze
4
+ VERSION = "0.5.0".freeze
5
5
 
6
6
  def self.version
7
7
  @@version ||= VERSION
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smartcloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Timeboard
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-06 00:00:00.000000000 Z
11
+ date: 2020-03-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-ssh
@@ -89,6 +89,7 @@ files:
89
89
  - lib/smartcloud/grids/grid-elasticsearch/.keep
90
90
  - lib/smartcloud/grids/grid-minio/.keep
91
91
  - lib/smartcloud/grids/grid-mysql/docker-entrypoint-initdb.d/.keep
92
+ - lib/smartcloud/grids/grid-nextcloud/.keep
92
93
  - lib/smartcloud/grids/grid-nginx/.keep
93
94
  - lib/smartcloud/grids/grid-prereceiver/Dockerfile
94
95
  - lib/smartcloud/grids/grid-prereceiver/fcgiwrap/APKBUILD
@@ -265,6 +266,7 @@ files:
265
266
  - lib/smartcloud/grids/grid-solr/sunspot/conf/solrconfig.xml
266
267
  - lib/smartcloud/grids/minio.rb
267
268
  - lib/smartcloud/grids/mysql.rb
269
+ - lib/smartcloud/grids/nextcloud.rb
268
270
  - lib/smartcloud/grids/nginx.rb
269
271
  - lib/smartcloud/grids/prereceiver.rb
270
272
  - lib/smartcloud/grids/redmine.rb
@@ -281,6 +283,7 @@ files:
281
283
  - lib/smartcloud/templates/dotsmartcloud/grids/grid-elasticsearch/logs/.keep
282
284
  - lib/smartcloud/templates/dotsmartcloud/grids/grid-minio/data/.keep
283
285
  - lib/smartcloud/templates/dotsmartcloud/grids/grid-mysql/data/.keep
286
+ - lib/smartcloud/templates/dotsmartcloud/grids/grid-nextcloud/html/.keep
284
287
  - lib/smartcloud/templates/dotsmartcloud/grids/grid-nginx/certificates/.keep
285
288
  - lib/smartcloud/templates/dotsmartcloud/grids/grid-nginx/fastcgi.conf
286
289
  - lib/smartcloud/templates/dotsmartcloud/grids/grid-nginx/htpasswd/.keep