Changeset 984
- Timestamp:
- Mar 3, 2021, 3:41:55 PM (4 years ago)
- Location:
- trunk
- Files:
-
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Dockerfile
r982 r984 14 14 libmapserver-dev \ 15 15 libmozjs185-dev \ 16 \ 17 saga \ 18 libsaga-api-7.3.0 \ 19 libotb \ 20 otb-bin \ 21 \ 16 22 libpq5 \ 17 23 libpython3.6 \ … … 49 55 gettext-base \ 50 56 \ 57 # Comment lines bellow if nor OTB nor SAGA \ 58 libotb-dev \ 59 otb-qgis \ 60 otb-bin-qt \ 61 qttools5-dev \ 62 qttools5-dev-tools \ 63 qtbase5-dev \ 64 libqt5opengl5-dev \ 65 libtinyxml-dev \ 66 libfftw3-dev \ 67 cmake \ 68 libsaga-dev \ 69 # Comment lines before this one if nor OTB nor SAGA \ 70 \ 51 71 libfcgi-dev \ 52 72 libgdal-dev \ 73 libwxgtk3.0-dev \ 53 74 libjson-c-dev \ 54 75 libssh2-1-dev \ … … 70 91 && cd ./zoo-project/zoo-kernel \ 71 92 && autoconf \ 72 && ./configure --with-python=/usr --with-pyvers=3.6 --with-js=/usr --with-mapserver=/usr --with-ms-version=7 --with-json=/usr --with- db-backend --prefix=/usr\93 && ./configure --with-python=/usr --with-pyvers=3.6 --with-js=/usr --with-mapserver=/usr --with-ms-version=7 --with-json=/usr --with-r=/usr --with-db-backend --prefix=/usr --with-otb=/usr/ --with-itk=/usr --with-otb-version=6.6 --with-itk-version=4.12 --with-saga=/usr --with-saga-version=7.2 --with-wx-config=/usr/bin/wx-config \ 73 94 && make \ 74 95 && make install \ … … 82 103 && cp ../zoo-services/hello-py/cgi-env/* /usr/lib/cgi-bin/ \ 83 104 && cp ../zoo-services/hello-js/cgi-env/* /usr/lib/cgi-bin/ \ 105 && cp ../zoo-services/hello-r/cgi-env/* /usr/lib/cgi-bin/ \ 84 106 && cp ../zoo-api/js/* /usr/lib/cgi-bin/ \ 107 && cp ../zoo-api/r/minimal.r /usr/lib/cgi-bin/ \ 85 108 \ 86 109 && cp oas.cfg /usr/lib/cgi-bin/ \ … … 88 111 # TODO: main.cfg is not processed \ 89 112 && prefix=/usr envsubst < main.cfg > /usr/lib/cgi-bin/main.cfg \ 113 \ 114 #Comment lines below from here if no OTB \ 115 && mkdir otb_build \ 116 && cd otb_build \ 117 && cmake ../../../thirds/otb2zcfg \ 118 && make \ 119 && mkdir OTB \ 120 && cd OTB \ 121 && ITK_AUTOLOAD_PATH=/usr/lib/x86_64-linux-gnu/otb/applications/ ../otb2zcfg \ 122 && mkdir /usr/lib/cgi-bin/OTB \ 123 && cp *zcfg /usr/lib/cgi-bin/OTB \ 124 #&& for i in *zcfg; do cp $i /usr/lib/cgi-bin/$i ; j="$(echo $i | sed "s:.zcfg::g")" ; sed "s:$j:OTB_$j:g" -i /usr/lib/cgi-bin/OTB_$i ; done \ 125 #Comment lines before this one if no OTB \ 126 \ 127 #Comment lines below from here if no SAGA \ 128 && cd .. \ 129 && make -C ../../../thirds/saga2zcfg \ 130 && mkdir zcfgs \ 131 && cd zcfgs \ 132 && dpkg -L saga \ 133 && export MODULE_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/saga/ \ 134 && export SAGA_MLB=/usr/lib/x86_64-linux-gnu/saga/ \ 135 && ln -s /usr/lib/x86_64-linux-gnu/saga/ /usr/lib/saga \ 136 && ../../../../thirds/saga2zcfg/saga2zcfg \ 137 && mkdir /usr/lib/cgi-bin/SAGA \ 138 && ls \ 139 && cp -r * /usr/lib/cgi-bin/SAGA \ 140 #Remove OTB if not built or SAGA if no SAGA \ 141 && for j in OTB SAGA ; do for i in $(find /usr/lib/cgi-bin/$j/ -name "*zcfg"); do sed "s:image/png:image/png\n useMapserver = true\n msClassify = true:g;s:text/xml:text/xml\n useMapserver = true:g;s:mimeType = application/x-ogc-aaigrid:mimeType = application/x-ogc-aaigrid\n </Supported>\n <Supported>\n mimeType = image/png\n useMapserver=true:g" -i $i; done; done \ 142 \ 143 && cd ../.. \ 144 #Comment lines before this one if nor OTB nor SAGA \ 90 145 \ 91 146 && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $BUILD_DEPS \ … … 158 213 ARG BUILD_DEPS=" \ 159 214 git \ 215 \ 160 216 " 161 217 WORKDIR /zoo-project … … 164 220 && apt-get update && apt-get install -y --no-install-recommends $BUILD_DEPS \ 165 221 \ 166 && git clone https://github.com/ZOO-Project/examples.git 222 && git clone https://github.com/ZOO-Project/examples.git \ 223 && git clone https://github.com/swagger-api/swagger-ui.git 167 224 168 225 # … … 174 231 apache2 \ 175 232 curl \ 233 cgi-mapserver \ 234 mapserver-bin \ 235 #Uncomment the line below to add vi editor \ 236 #vim \ 237 #Uncomment the lines below to add debuging \ 238 #valgrind \ 239 #gdb \ 176 240 " 177 241 … … 190 254 COPY --from=demos /zoo-project/examples/data/ /usr/com/zoo-project/ 191 255 COPY --from=demos /zoo-project/examples/ /var/www/html/ 256 COPY --from=demos /zoo-project/swagger-ui /var/www/html/swagger-ui 192 257 193 258 … … 195 260 && apt-get update && apt-get install -y --no-install-recommends $RUN_DEPS \ 196 261 \ 262 && sed "s=https://petstore.swagger.io/v2/swagger.json=http://localhost/ogc-api/api=g" -i /var/www/html/swagger-ui/dist/index.html \ 263 && mv /var/www/html/swagger-ui/dist /var/www/html/swagger-ui/oapip \ 264 && ln -s /tmp/ /var/www/html/temp \ 265 && ln -s /usr/lib/x86_64-linux-gnu/saga/ /usr/lib/saga \ 197 266 && rm -rf /var/lib/apt/lists/* \ 198 267 && pip3 install Cheetah3 redis\ 199 268 && sed "s:AllowOverride None:AllowOverride All:g" -i /etc/apache2/apache2.conf \ 200 269 && mkdir -p /tmp/statusInfos \ 201 && chown www-data:www-data -R /tmp/statusInfos \270 && chown www-data:www-data -R /tmp/statusInfos /usr/com/zoo-project \ 202 271 && a2enmod cgi rewrite 203 272 -
trunk/docker/main.cfg
r968 r984 2 2 encoding = utf-8 3 3 version = 1.0.0 4 serverAddress = http:// www.zoo-project.org/zoo/4 serverAddress = http://localhost/cgi-bin/zoo_loader.cgi 5 5 language = en-US 6 6 lang = fr-FR,en-CA,en-US 7 7 tmpPath=/tmp/ 8 tmpUrl = ../t mpPathRelativeToServerAdress/8 tmpUrl = ../temp/ 9 9 dataPath = /usr/com/zoo-project 10 10 cacheDir = /tmp/ 11 11 templatesPath = /var/www/ 12 mapserverAddress = http://localhost/cgi-bin/mapserv 13 msOgcVersion=1.0.0 14 cors=true 12 15 13 16 [identification] … … 42 45 schema=public 43 46 47 [env] 48 R_HOME=/usr/lib/R 49 ITK_AUTOLOAD_PATH=/usr/lib/x86_64-linux-gnu/otb/applications/ 50 MODULE_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/saga/ -
trunk/docker/oas.cfg
r968 r984 12 12 wsUrl=ws://localhost:8888/ 13 13 publisherUrl=http://localhost/cgi-bin/publish.py?jobid= 14 io_as_array=true15 14 16 15 [/] … … 41 40 42 41 [api.html] 43 href=http s://demo.mapmint.com/swagger-ui/ogc-api-processes/42 href=http://localhost/swagger-ui/oapip/ 44 43 45 44 [api] -
trunk/thirds/otb2zcfg/otb2zcfg.cxx
r917 r984 222 222 if(type == ParameterType_StringList || type == ParameterType_String || type == ParameterType_Float 223 223 || type == ParameterType_Int || type == ParameterType_Choice || type == ParameterType_ListView 224 || type == ParameterType_RAM || type == ParameterType_ Empty || type == ParameterType_Directory){224 || type == ParameterType_RAM || type == ParameterType_Directory){ 225 225 std::cout << " <LiteralData>" << std::endl; 226 226 std::string lt; … … 233 233 || type == ParameterType_ListView) 234 234 lt="string"; 235 if(type == ParameterType_Empty)236 lt="boolean";237 235 std::cout << " dataType = " << lt << std::endl; 238 236 if(type == ParameterType_Choice || type == ParameterType_ListView){ … … 281 279 } 282 280 else{ 283 if(type == ParameterType_ComplexOutputImage){ 284 printOutputComplexImage(m_Application->GetParameterComplexOutputImagePixelType(paramKey)); 285 }else{ 281 { 286 282 std::cout << " <ComplexData>" << std::endl; 287 if(type == ParameterType_InputImage || type == ParameterType_InputImageList || type == ParameterType_ComplexInputImage){283 if(type == ParameterType_InputImage || type == ParameterType_InputImageList){ 288 284 printImages(); 289 285 } … … 338 334 if(paramKey!="inxml" && paramKey!="outxml" && 339 335 ((type == ParameterType_OutputVectorData || type == ParameterType_OutputImage 340 || type == ParameterType_OutputImage || type == ParameterType_ComplexOutputImage336 || type == ParameterType_OutputImage 341 337 || type == ParameterType_OutputFilename) || role==1) && type != ParameterType_Group){ 342 338 hasOutput=1; … … 356 352 } 357 353 358 if(type == ParameterType_OutputImage || type == ParameterType_ComplexOutputImage){354 if(type == ParameterType_OutputImage){ 359 355 std::cout << " <ComplexData>" << std::endl; 360 356 printImages(); -
trunk/zoo-project/HISTORY.txt
r982 r984 1 1 Version 1.8.1 2 * Make all demos running within docker 2 3 * Deploy demo HTML UI from github from the Dockerfile 3 4 * Add demo ZOO-Services build in the Dockerfile -
trunk/zoo-project/zoo-kernel/configure.ac
r982 r984 415 415 CPPFLAGS_SAVE="$CPPFLAGS" 416 416 CPPFLAGS="$PROJ_CPPFLAGS" 417 AC_CHECK_HEADERS([proj_api.h],418 [], [AC_MSG_ERROR([could not find headers include related to PROJ4])])419 417 420 418 AC_SUBST([PROJ_CPPFLAGS]) … … 607 605 echo $PYTHONCONFIG 608 606 # Extract the linker and include flags 609 PYTHON_LDFLAGS=`$PYTHONCONFIG --ldflags` 607 #PYTHON_LDFLAGS=`$PYTHONCONFIG --ldflags` 608 PYTHON_LDFLAGS=$($PYTHONCONFIG --ldflags | sed "s:python${PYTHON_VERS}/config-${PYTHON_VERS}-::g") 610 609 PYTHON_CPPFLAGS=`$PYTHONCONFIG --includes` 611 610 … … 618 617 # Ensure we can link against libphp 619 618 LIBS_SAVE="$LIBS" 620 LIBS="$PYTHON_LDFLAGS" 621 PY_LIB=`$PYTHONCONFIG --libs | sed \ 622 -e 's/.*\(python[[0-9]]\.[[0-9]]\).*/\1/'` 623 AC_CHECK_LIB([$PY_LIB], [PyObject_CallObject], [], [AC_MSG_ERROR([could not find libpython])], []) 619 #LIBS="$PYTHON_LDFLAGS" 620 #PY_LIB=`$PYTHONCONFIG --libs | sed \ 621 # -e 's/.*\(python[[0-9]]\.[[0-9]]\).*/\1/'` 622 #AC_CHECK_LIB([$PY_LIB], [PyObject_CallObject], [], [AC_MSG_ERROR([could not find libpython])], []) 623 LIBS="m $PYTHON_LDFLAGS -lpython${PYTHON_VERS}" 624 PYTHON_LDFLAGS="-l$LIBS" 625 LDFLAGS=$PYTHON_LDFLAGS 626 AC_CHECK_LIB([], [PyObject_CallObject], [], [AC_MSG_ERROR([could not find libpython])], []) 624 627 LIBS="$LIBS_SAVE" 625 628 fi -
trunk/zoo-project/zoo-kernel/main_conf_read.y
r961 r984 154 154 my_maps=my_map; 155 155 my_maps->name=NULL; 156 my_maps->content=NULL; 157 my_maps->child=NULL; 158 my_maps->next=NULL; 156 159 current_maps=my_maps; 157 160 -
trunk/zoo-project/zoo-kernel/service.c
r967 r984 838 838 else 839 839 pmsCursor->next->child=NULL; 840 return; 840 841 } 841 842 else{ -
trunk/zoo-project/zoo-kernel/service_internal_ms.c
r955 r984 1272 1272 m->numlayers++; 1273 1273 GDALClose( hDataset ); 1274 #ifndef RELY_ON_DB 1274 1275 GDALDestroyDriverManager(); 1276 #endif 1275 1277 CPLCleanupTLS(); 1276 1278 storeMd5(pszFilename); -
trunk/zoo-project/zoo-kernel/service_internal_otb.c
r962 r984 211 211 }else{ 212 212 if(type == ParameterType_OutputVectorData){ 213 c har* ext="json";213 const char* ext="json"; 214 214 if(tmpVal!=NULL){ 215 215 if(strncasecmp(tmpVal->value,"text/xml",8)==0) … … 232 232 else 233 233 if(type == ParameterType_OutputFilename){ 234 c har* ext="txt";234 const char* ext="txt"; 235 235 if(tmpVal!=NULL){ 236 236 if(strncasecmp(tmpVal->value,"text/xml",8)==0) … … 308 308 char tmp[1024]; 309 309 map* tmpVal=getMapFromMaps(inputs,paramKey.c_str(),"mimeType"); 310 c har* ext="json";310 const char* ext="json"; 311 311 if(tmpVal!=NULL){ 312 312 if(strncasecmp(tmpVal->value,"application/zip",14)==0){ … … 362 362 else 363 363 if(type == ParameterType_InputImage 364 || type == ParameterType_ ComplexInputImage || type == ParameterType_InputVectorData364 || type == ParameterType_InputVectorData 365 365 || type == ParameterType_InputFilename){ 366 366 m_Application->SetParameterString(paramKey, test->value); … … 403 403 long count; 404 404 405 c har *exts[4];405 const char *exts[4]; 406 406 exts[0]=".shp"; 407 407 exts[1]=".shx"; -
trunk/zoo-project/zoo-kernel/service_internal_otb.h
r640 r984 36 36 #include "service_internal.h" 37 37 #include "service.h" 38 #include "cgic.h"39 38 #ifdef WIN32 40 39 #include <windows.h> 41 40 #include <direct.h> 42 41 #endif 43 #include <vector>44 #include <string>45 42 46 43 /** -
trunk/zoo-project/zoo-kernel/ulinet.h
r945 r984 34 34 #include "jsapi.h" 35 35 #endif 36 #include "fcgi_stdio.h"37 36 #include <stdlib.h> 38 37 #include <fcntl.h> -
trunk/zoo-project/zoo-kernel/zoo_service_loader.c
r982 r984 1886 1886 FILE *f0, *f1; 1887 1887 HINTERNET hInternet; 1888 service *s1 ;1888 service *s1=NULL; 1889 1889 maps *request_output_real_format = NULL; 1890 1890 maps *request_input_real_format = NULL; … … 2552 2552 printf("\n"); 2553 2553 fflush(stdout); 2554 json_object_put(res); 2554 2555 } 2555 2556 //return 1; … … 3453 3454 #else 3454 3455 recordResponse(m,fbkp1); 3456 #ifdef USE_CALLBACK 3455 3457 if (eres == SERVICE_SUCCEEDED) 3456 #ifdef USE_CALLBACK3457 3458 invokeCallback(m,NULL,request_output_real_format,6,0); 3458 3459 #endif … … 3493 3494 #endif 3494 3495 } 3495 3496 freeService (&s1); 3497 free (s1); 3496 3497 if(s1!=NULL){ 3498 freeService (&s1); 3499 free (s1); 3500 } 3498 3501 freeMaps (&m); 3499 3502 free (m); -
trunk/zoo-project/zoo-services/ogr/base-vect-ops/service.c
r917 r984 38 38 #include "service_internal.h" 39 39 40 extern "C" {41 40 #include <libxml/tree.h> 42 41 #include <libxml/parser.h> … … 44 43 #include <libxml/xpathInternals.h> 45 44 46 /*#include <openssl/sha.h> 47 #include <openssl/hmac.h> 48 #include <openssl/evp.h> 49 #include <openssl/bio.h> 50 #include <openssl/buffer.h> 51 */ 45 extern "C" { 52 46 53 47 void printExceptionReportResponse(maps*,map*); -
trunk/zoo-project/zoo-services/utils/open-api/templates/index.html
r967 r984 18 18 #import json 19 19 #if "cache_file" in $inputs["tmpl"] 20 #set values=json.load(open($inputs["tmpl"]["cache_file"] ))20 #set values=json.load(open($inputs["tmpl"]["cache_file"], encoding='utf-8')) 21 21 #else 22 #set values= $inputs["tmpl"]["value"]22 #set values=json.loads($inputs["tmpl"]["value"]) 23 23 #end if 24 24 #except Exception as e 25 25 $e 26 #set values={} 26 27 #end try 27 28 <html lang="en"> … … 202 203 #end if 203 204 #end if 204 #if $obj["maxOccurs"] >1205 #if $obj["maxOccurs"]=="unbounded" or $obj["maxOccurs"]>1 205 206 <div class="btn-group" role="group" aria-label="Basic example"> 206 207 <button type="button" class="btn btn-secondary" onclick="addElementToList(\$(this));">Add</button> … … 525 526 <hr> 526 527 <address>$openapi["openapi"]["rootUrl"]$(currentUrl).html</address> 527 <!-- hhmts start -->Last modified: Wed Dec 16 16:06:56 CET 2020<!-- hhmts end -->528 <!-- hhmts start -->Last modified: Mon Mar 1 17:01:50 CET 2021 <!-- hhmts end --> 528 529 </main> 529 530 #if $currentKey=="root"
Note: See TracChangeset
for help on using the changeset viewer.