| @@ -1,3 +1,24 @@ | |||||
| /* | |||||
| check valid JSON | |||||
| check valid SHA256 | |||||
| upload to VirusTotal and assert less than 3 or so engines return suspicious for each ZIP | |||||
| ZIP must not contain a __MACOSX directory at root level. | |||||
| ZIP must not be a tarbomb. Yes, I know the first is a subset of this one, but it's better to have more feedback. | |||||
| We might even want to assert that the single folder at root level is named as the slug of the plugin. I'm for this. | |||||
| schema validation | |||||
| slug required | |||||
| if we could have a "soft" warning for slugs matching /[a-zA-Z0-9_\-]/+, that'd be great, although I'd rather their slugs break this than change. | |||||
| version required | |||||
| version must begin with "0.5." (this will be changed with each version bump.) | |||||
| */ | |||||
| const fs = require("fs"); | const fs = require("fs"); | ||||
| const request = require("request"); | const request = require("request"); | ||||
| const { exec } = require('child_process'); | const { exec } = require('child_process'); | ||||
| @@ -17,6 +38,12 @@ if(verbose){console.log('delay', con.getDelay());} | |||||
| //We always just check all JSON because it's easy. | //We always just check all JSON because it's easy. | ||||
| //However, we only want to check zip files of manifests that have changed. | //However, we only want to check zip files of manifests that have changed. | ||||
| //TODO FIX - travis doesn't have master | |||||
| // https://github.com/travis-ci/travis-ci/issues/6069 | |||||
| // todo check diff to see if "download" or "sha256" changed | |||||
| exec('git diff -w --stat --name-only origin/master -- plugins/', (error, stdout, stderr) => { | exec('git diff -w --stat --name-only origin/master -- plugins/', (error, stdout, stderr) => { | ||||
| if (error) { | if (error) { | ||||
| console.error(`exec error: ${error}`); | console.error(`exec error: ${error}`); | ||||