1
0
mirror of https://git.cloudron.io/cloudron/minio-app synced 2025-09-13 00:15:40 +00:00

Compare commits

..

49 Commits

Author SHA1 Message Date
Girish Ramakrishnan
fb0c6e5dd7 Version 1.108.0 2020-05-09 09:55:12 -07:00
Girish Ramakrishnan
8ff2a98394 Update minio to RELEASE.2020-05-08T02-40-49Z 2020-05-09 09:46:15 -07:00
Girish Ramakrishnan
e8ac931f8d Version 1.107.0 2020-05-02 20:44:06 -07:00
Girish Ramakrishnan
f2eb088b8c Update minio to RELEASE.2020-05-01T22-19-14Z 2020-05-02 20:36:30 -07:00
Girish Ramakrishnan
515aecd5c5 Version 1.106.0 2020-04-30 09:31:10 -07:00
Girish Ramakrishnan
1d1ee9ecfb Update minio to RELEASE.2020-04-28T23-56-56Z 2020-04-30 09:15:10 -07:00
Girish Ramakrishnan
f1eefbb501 Version 1.105.0 2020-04-27 10:06:58 -07:00
Girish Ramakrishnan
a0952074c5 Update minio to RELEASE.2020-04-23T00-58-49Z 2020-04-27 09:59:17 -07:00
Girish Ramakrishnan
c848988e99 Update minio to RELEASE.2020-04-23T00-58-49Z 2020-04-23 10:43:16 -07:00
Girish Ramakrishnan
3e62f036a3 Version 1.104.0 2020-04-16 10:27:52 -07:00
Girish Ramakrishnan
8f3c6357f5 Update minio to RELEASE.2020-04-15T19-42-18Z 2020-04-16 09:33:24 -07:00
Girish Ramakrishnan
eaa2b6e2b4 Version 1.103.0 2020-04-15 11:55:19 -07:00
Girish Ramakrishnan
92856faf70 Update minio to RELEASE.2020-04-15T00-39-01Z 2020-04-15 11:39:24 -07:00
Girish Ramakrishnan
1302e71321 Update minio to RELEASE.2020-04-10T03-34-42Z 2020-04-10 09:53:17 -07:00
Girish Ramakrishnan
c3195428df Version 1.101.0 2020-04-06 11:53:19 -07:00
Girish Ramakrishnan
99f10e9b3e Update minio to RELEASE.2020-04-04T05-39-31Z 2020-04-06 11:40:14 -07:00
Girish Ramakrishnan
136f41b004 Version 1.100.0 2020-04-02 18:32:36 -07:00
Girish Ramakrishnan
541185cfa6 Update minio to 2020-04-02T21-34-49Z 2020-04-02 18:27:36 -07:00
Girish Ramakrishnan
8b6fd80d74 Version 1.99.0 2020-03-26 09:37:41 -07:00
Girish Ramakrishnan
c6f0bdc5ef Update minio to RELEASE.2020-03-25T07-03-04Z 2020-03-26 09:33:33 -07:00
Girish Ramakrishnan
63747ef487 Version 1.98.0 2020-03-23 12:06:35 -07:00
Girish Ramakrishnan
8272354a77 Update minio to RELEASE.2020-03-19T21-49-00Z 2020-03-23 11:55:20 -07:00
Girish Ramakrishnan
5e15088198 Version 1.97.0 2020-03-15 16:42:04 -07:00
Girish Ramakrishnan
0535814733 Update minio to RELEASE.2020-03-14T02-21-58Z 2020-03-15 16:35:51 -07:00
Girish Ramakrishnan
7cb935a0c4 Version 1.96.0 2020-03-11 10:17:32 -07:00
Girish Ramakrishnan
e263bde545 Update minio to RELEASE.2020-03-09T18-26-53Z 2020-03-11 10:07:04 -07:00
Girish Ramakrishnan
5f31e7fd2f Version 1.95.0 2020-03-08 18:11:48 -07:00
Girish Ramakrishnan
582fda2720 Update minio to RELEASE.2020-03-06T22-23-56Z 2020-03-08 17:19:12 -07:00
Girish Ramakrishnan
ea2898c1b2 Version 1.94.0 2020-02-28 09:34:07 -08:00
Girish Ramakrishnan
b6acac345b Update minio to 2020-02-27T00-23-05Z 2020-02-28 09:33:45 -08:00
Girish Ramakrishnan
91c29432e3 Version 1.93.0 2020-02-21 17:19:24 -08:00
Girish Ramakrishnan
5e83c9cf88 Update minio to 2020-02-20T22-51-23Z 2020-02-21 17:11:48 -08:00
Girish Ramakrishnan
9834ec1c8e Version 1.92.0 2020-02-09 07:50:44 -08:00
Girish Ramakrishnan
7ed03bef1b Update minio to 2020-02-07T23-28-16Z 2020-02-09 07:43:45 -08:00
Girish Ramakrishnan
d6958e05db Version 1.91.0 2020-01-26 15:08:31 -08:00
Girish Ramakrishnan
588125b5f4 Update minio to 2020-01-25T02-50-51Z 2020-01-26 14:55:52 -08:00
Girish Ramakrishnan
891169e87b add some basic key validation 2020-01-17 11:09:14 -08:00
Girish Ramakrishnan
38f24649fe Version 1.90.0 2020-01-16 16:10:36 -08:00
Girish Ramakrishnan
7f8ae63c00 Fix tests 2020-01-16 16:05:59 -08:00
Girish Ramakrishnan
4ee1e0e8ad Update minio to 2020-01-16T22-40-29Z 2020-01-16 16:04:43 -08:00
Girish Ramakrishnan
02b00f4476 Avoid double docs link 2020-01-16 16:04:13 -08:00
Girish Ramakrishnan
b524016d72 formatting 2020-01-16 16:01:44 -08:00
Girish Ramakrishnan
e8ee533d1f Version 1.89.0 2020-01-16 15:49:39 -08:00
Girish Ramakrishnan
ed0250199a wording 2020-01-16 15:48:53 -08:00
Girish Ramakrishnan
7a3c6f9efd Fix tests 2020-01-16 15:48:29 -08:00
Girish Ramakrishnan
e0ce87b291 config dir is dead
minio now stores the config as part of the storage system under .minio.sys
when passed config dir, it merely "migrates" config.json to the new system
and renames config.json to config.json.deprecated
2020-01-16 15:34:24 -08:00
Girish Ramakrishnan
f28d63d0b9 Update minio to RELEASE.2020-01-16T03-05-44Z 2020-01-16 14:44:57 -08:00
Girish Ramakrishnan
af0e17d5b0 Version 1.88.0 2020-01-08 10:00:11 -08:00
Girish Ramakrishnan
c662d0caab Update minio to 2020-01-03T19-12-21Z 2020-01-08 09:27:00 -08:00
11 changed files with 581 additions and 539 deletions

View File

@@ -402,3 +402,67 @@
[1.87.0] [1.87.0]
* Update minio to 2019-12-30T05-45-39Z * Update minio to 2019-12-30T05-45-39Z
[1.88.0]
* Update minio to 2020-01-03T19-12-21Z
[1.89.0]
* Update minio to 2020-01-16T03-05-44Z
[1.90.0]
* Update minio to 2020-01-16T22-40-29Z
[1.91.0]
* Update minio to 2020-01-25T02-50-51Z
[1.92.0]
* Update minio to 2020-02-07T23-28-16Z
[1.93.0]
* Update minio to 2020-02-20T22-51-23Z
[1.94.0]
* Update minio to 2020-02-27T00-23-05Z
[1.95.0]
* Update minio to 2020-03-06T22-23-56Z
[1.96.0]
* Update minio to 2020-03-09T18-26-53Z
[1.97.0]
* Update minio to 2020-03-14T02-21-58Z
[1.98.0]
* Update minio to 2020-03-19T21-49-00Z
[1.99.0]
* Update minio to 2020-03-25T07-03-04Z
[1.100.0]
* Update minio to 2020-04-02T21-34-49Z
[1.101.0]
* Update minio to 2020-04-04T05-39-31Z
[1.102.0]
* Update minio to 2020-04-10T03-34-42Z
[1.103.0]
* Update minio to 2020-04-15T00-39-01Z
[1.104.0]
* Update minio to 2020-04-15T19-42-18Z
[1.105.0]
* Update minio to 2020-04-23T00-58-49Z
* Use latest docker image
[1.106.0]
* Update minio to 2020-04-28T23-56-56Z
[1.107.0]
* Update minio to 2020-05-01T22-19-14Z
[1.108.0]
* Update minio to 2020-05-08T02-40-49Z

View File

@@ -5,7 +5,7 @@
"description": "file://DESCRIPTION.md", "description": "file://DESCRIPTION.md",
"changelog": "file://CHANGELOG", "changelog": "file://CHANGELOG",
"tagline": "Distributed object storage", "tagline": "Distributed object storage",
"version": "1.87.0", "version": "1.108.0",
"healthCheckPath": "/minio/login", "healthCheckPath": "/minio/login",
"httpPort": 8000, "httpPort": 8000,
"addons": { "addons": {

View File

@@ -1,4 +1,4 @@
This app packages Minio <upstream>2019-12-30T05-45-39Z</upstream>. This app packages Minio <upstream>2020-05-08T02-40-49Z</upstream>.
Minio is a distributed object storage server built for cloud applications and devops. Minio is a distributed object storage server built for cloud applications and devops.

View File

@@ -1,6 +1,6 @@
FROM cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617 FROM cloudron/base:2.0.0@sha256:f9fea80513aa7c92fe2e7bf3978b54c8ac5222f47a9a32a7f8833edf0eb5a4f4
ARG VERSION=RELEASE.2019-12-30T05-45-39Z ARG VERSION=RELEASE.2020-05-08T02-40-49Z
RUN mkdir -p /app/code \ RUN mkdir -p /app/code \
&& wget https://dl.minio.io/server/minio/release/linux-amd64/minio.${VERSION} -O /app/code/minio \ && wget https://dl.minio.io/server/minio/release/linux-amd64/minio.${VERSION} -O /app/code/minio \
@@ -8,7 +8,7 @@ RUN mkdir -p /app/code \
WORKDIR /app/code WORKDIR /app/code
ADD config.json /app/code/config.json
ADD start.sh /app/code/start.sh ADD start.sh /app/code/start.sh
ADD minio-credentials /app/code/minio-credentials
CMD [ "/app/code/start.sh" ] CMD [ "/app/code/start.sh" ]

View File

@@ -2,7 +2,7 @@ This application does not integrate with Cloudron authentication.
Please use the following credentials to login: Please use the following credentials to login:
* AccessKey: `admin` * AccessKey: `minioadmin`
* SecretKey: `secretkey` * SecretKey: `minioadmin`
**Please change the credentials immediately** **Please change the credentials immediately following the docs**

View File

@@ -1,14 +0,0 @@
{
"version": "33",
"credential": {
"accessKey": "admin",
"secretKey": "secretkey"
},
"region": "us-east-1",
"logger": {
"console": {
"enable": true,
"level": "error"
}
}
}

41
minio-credentials Executable file
View File

@@ -0,0 +1,41 @@
#!/usr/bin/env node
'use strict';
const fs = require('fs');
const MINIO_CONFIG = '/app/data/data/.minio.sys/config/config.json';
function usage() {
console.log('Usage:\n');
console.log('\tminio-credentials get');
console.log('\tminio-credentials set <access key> <secret key>');
console.log();
}
let config = JSON.parse(fs.readFileSync(MINIO_CONFIG, 'utf8'));
let adminCredentials = config['credentials']['_'];
let accessKey = adminCredentials.filter(kv => kv.key === 'access_key')[0];
let secretKey = adminCredentials.filter(kv => kv.key === 'secret_key')[0];
if (process.argv[2] === 'get') {
console.log('Access Key:', accessKey.value);
console.log('Secret Key:', secretKey.value);
} else if (process.argv[2] === 'set') {
if (process.argv.length !== 5) return usage();
// https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html
if (process.argv[4].length < 5) return console.log('secret key must be atleast 5 characters');
if (!/^[\w+=,.@-]+$/.test(process.argv[3])) return console.log('access key has invalid characters');
accessKey.value = process.argv[3];
if (process.argv[4].length < 8) return console.log('secret key must be atleast 8 characters');
secretKey.value = process.argv[4];
fs.writeFileSync(MINIO_CONFIG, JSON.stringify(config), 'utf8');
console.log('Credentials updated. Restart minio app for new credentials to take effect.\n');
} else {
usage();
}

View File

@@ -2,16 +2,13 @@
set -eu set -eu
mkdir -p /app/data/data /app/data/certs /app/data/config mkdir -p /app/data/data /run/minio/config /run/minio/certs
if ! [ -f /app/data/config/config.json ]; then echo "==> Changing ownership"
cp /app/code/config.json /app/data/config/config.json
fi
echo "Changing ownership"
chown -R cloudron:cloudron /app/data chown -R cloudron:cloudron /app/data
echo "Starting minio" # the --config-dir is deprecated and not used. but without it, minio will try to create $HOME/.minio :/ same for --certs-dir
exec /usr/local/bin/gosu cloudron:cloudron /app/code/minio server --config-dir /app/data/config --certs-dir /app/data/certs --address :8000 /app/data/data echo "==> Starting minio"
exec /usr/local/bin/gosu cloudron:cloudron /app/code/minio --certs-dir /run/minio/certs --config-dir /run/minio/config --quiet server --address :8000 /app/data/data

938
test/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -9,14 +9,14 @@
"author": "", "author": "",
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
"chromedriver": "^79.0.0", "chromedriver": "^81.0.0",
"ejs": "^3.0.1", "ejs": "^3.0.2",
"expect.js": "^0.3.1", "expect.js": "^0.3.1",
"mkdirp": "^0.5.1", "mkdirp": "^1.0.4",
"mocha": "^6.2.2", "mocha": "^7.1.1",
"rimraf": "^3.0.0", "rimraf": "^3.0.2",
"selenium-server-standalone-jar": "^3.141.59", "selenium-server-standalone-jar": "^3.141.59",
"selenium-webdriver": "^3.6.0", "selenium-webdriver": "^3.6.0",
"superagent": "^5.1.3" "superagent": "^5.2.2"
} }
} }

View File

@@ -14,14 +14,10 @@ var by = require('selenium-webdriver').By,
Key = require('selenium-webdriver').Key, Key = require('selenium-webdriver').Key,
Builder = require('selenium-webdriver').Builder; Builder = require('selenium-webdriver').Builder;
var accessKey = 'admin',
secretKey = 'secretkey';
var bucket = 'cloudrontestbucket'; var bucket = 'cloudrontestbucket';
process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
describe('Application life cycle test', function () { describe('Application life cycle test', function () {
this.timeout(0); this.timeout(0);
@@ -56,7 +52,7 @@ describe('Application life cycle test', function () {
}); });
} }
function login(callback) { function login(accessKey, secretKey, callback) {
browser.manage().deleteAllCookies(); browser.manage().deleteAllCookies();
browser.get('https://' + app.fqdn).then(function () { browser.get('https://' + app.fqdn).then(function () {
return visible(by.id('accessKey')); return visible(by.id('accessKey'));
@@ -162,17 +158,21 @@ describe('Application life cycle test', function () {
expect(app).to.be.an('object'); expect(app).to.be.an('object');
}); });
it('can login', login); it('can login', login.bind(null, 'minioadmin', 'minioadmin'));
it('can add bucket', addBucket); it('can add bucket', addBucket);
it('can open settings', openSettings); it('can open settings', openSettings);
it('can logout', logout); it('can logout', logout);
it('can change credentials', function () {
execSync('cloudron exec --app ' + app.id + ' -- /app/code/minio-credentials set minioakey minioskey', { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
});
it('can restart app', function (done) { it('can restart app', function (done) {
execSync('cloudron restart'); execSync('cloudron restart');
done(); done();
}); });
it('can login', login); it('can login', login.bind(null, 'minioakey', 'minioskey'));
it('has bucket', checkBucket); it('has bucket', checkBucket);
it('can logout', logout); it('can logout', logout);
@@ -184,7 +184,7 @@ describe('Application life cycle test', function () {
execSync('cloudron restore --app ' + app.id, { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' }); execSync('cloudron restore --app ' + app.id, { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
}); });
it('can login', login); it('can login', login.bind(null, 'minioakey', 'minioskey'));
it('has bucket', checkBucket); it('has bucket', checkBucket);
it('can open settings', openSettings); it('can open settings', openSettings);
it('can logout', logout); it('can logout', logout);
@@ -197,7 +197,7 @@ describe('Application life cycle test', function () {
expect(app).to.be.an('object'); expect(app).to.be.an('object');
}); });
it('can login', login); it('can login', login.bind(null, 'minioakey', 'minioskey'));
it('has bucket', checkBucket); it('has bucket', checkBucket);
it('can logout', logout); it('can logout', logout);
@@ -213,13 +213,13 @@ describe('Application life cycle test', function () {
expect(app).to.be.an('object'); expect(app).to.be.an('object');
}); });
it('can login', login); it('can login', login.bind(null, 'minioadmin', 'minioadmin'));
it('can add buckets', addBucket); it('can add buckets', addBucket);
it('can logout', logout); it('can logout', logout);
it('can update', function () { it('can update', function () {
execSync('cloudron update --app ' + LOCATION, { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' }); execSync('cloudron update --app ' + LOCATION, { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
}); });
it('can login', login); it('can login', login.bind(null, 'minioadmin', 'minioadmin'));
it('has bucket', checkBucket); it('has bucket', checkBucket);
it('can logout', logout); it('can logout', logout);
it('uninstall app', function () { it('uninstall app', function () {