From 7e0e141273032c7afc1a9129512aa42c672fcf5d Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 23 Aug 2018 17:36:06 +0300 Subject: Always serialize reference submit result manifest value if available and restructure handlers dir --- brep/submit/submit-dir.in | 107 ---------------------------------------------- 1 file changed, 107 deletions(-) delete mode 100644 brep/submit/submit-dir.in (limited to 'brep/submit/submit-dir.in') diff --git a/brep/submit/submit-dir.in b/brep/submit/submit-dir.in deleted file mode 100644 index 4bcbe5f..0000000 --- a/brep/submit/submit-dir.in +++ /dev/null @@ -1,107 +0,0 @@ -#!/usr/bin/env bash - -# file : brep/submit/submit-dir.in -# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file - -# Simple package submission handler with directory storage. -# -# Validate the package archive located in the specified submission directory -# extracting and parsing the package manifest (saved as package.manifest in -# the submission directory). Keep the submission directory unless simulating. -# Write the submission result manifest to stdout. -# -usage="usage: $0 " - -verbose= #true - -trap "{ exit 1; }" ERR -set -o errtrace # Trap ERR in functions. - -@import brep/submit/submit@ - -if [ "$#" != 1 ]; then - error "$usage" -fi - -# Submission data directory (last and the only argument). -# -data_dir="${!#/}" - -if [ -z "$data_dir" ]; then - error "$usage" -fi - -if [ ! -d "$data_dir" ]; then - error "'$data_dir' does not exist or is not a directory" -fi - -reference="$(basename "$data_dir")" - -# Parse the submission request manifest and obtain the archive path as well -# as the simulate value. -# -manifest_parser_start "$data_dir/request.manifest" - -archive= -simulate= - -while IFS=: read -ru "$manifest_parser_ofd" -d '' n v; do - case "$n" in - archive) archive="$v" ;; - simulate) simulate="$v" ;; - esac -done - -manifest_parser_finish - -if [ -z "$archive" ]; then - error "archive manifest value expected" -fi - -if [ -n "$simulate" -a "$simulate" != "success" ]; then - exit_with_manifest 400 "unrecognized simulation outcome '$simulate'" -fi - -m="$data_dir/package.manifest" -extract_package_manifest "$data_dir/$archive" "$m" - -# Parse the package manifest and obtain the package name, version, and -# project. -# -manifest_parser_start "$m" - -name= -version= -project= - -while IFS=: read -ru "$manifest_parser_ofd" -d '' n v; do - case "$n" in - name) name="$v" ;; - version) version="$v" ;; - project) project="$v" ;; - esac -done - -manifest_parser_finish - -if [ -z "$name" ]; then - error "name manifest value expected" -fi - -if [ -z "$version" ]; then - error "version manifest value expected" -fi - -if [ -z "$project" ]; then - project="$name" -fi - -if [ -n "$simulate" ]; then - rm -r "$data_dir" - trace "$name/$version submission is simulated" -else - trace "$name/$version submission is queued" -fi - -exit_with_manifest 200 "$name/$version submission is queued" "$reference" -- cgit v1.1