diff --git a/vars/uploadDraftset.groovy b/vars/uploadDraftset.groovy index ab94608..61d413b 100644 --- a/vars/uploadDraftset.groovy +++ b/vars/uploadDraftset.groovy @@ -1,4 +1,4 @@ -def call(String datasetLabel, csvs, String mapping=null) { +def call(String datasetLabel, csvs, String mapping=null, String datasetPath=null) { configFileProvider([configFile(fileId: 'pmd', variable: 'configfile')]) { def config = readJSON(text: readFile(file: configfile)) String PMD = config['pmd_api'] @@ -26,10 +26,12 @@ drafter.deleteDraftset(PMD, credentials, jobDraft.id) } def newJobDraft = drafter.createDraftset(PMD, credentials, env.JOB_NAME) - String datasetPath = datasetLabel.toLowerCase() + if (!datasetPath) { + datasetPath = datasetLabel.toLowerCase() .replaceAll('[^\\w/]', '-') .replaceAll('-+', '-') .replaceAll('-\$', '') + } drafter.deleteGraph(PMD, credentials, newJobDraft.id, "http://gss-data.org.uk/graph/${datasetPath}/metadata") drafter.deleteGraph(PMD, credentials, newJobDraft.id, @@ -40,11 +42,13 @@ csvs.each { csv -> echo "Uploading ${csv}" runPipeline("${PIPELINE}/ons-table2qb.core/data-cube/import", - newJobDraft.id, credentials, [[name: 'observations-csv', - file: [name: csv, type: 'text/csv;charset=UTF-8']], - [name: 'dataset-name', value: datasetLabel], - [name: 'columns-csv', - file: [name: mapping, type: 'text/csv;charset=UTF-8']]]) + newJobDraft.id, credentials, [ + [name: 'observations-csv', + file: [name: csv, type: 'text/csv;charset=UTF-8']], + [name: 'dataset-name', value: datasetLabel], + [name: 'dataset-slug', value: datasetPath], + [name: 'columns-csv', file: [name: mapping, type: 'text/csv;charset=UTF-8']] + ]) } } } \ No newline at end of file