An error occurred fetching the project authors.
- 22 Jan, 2019 4 commits
-
-
Kirill Smelkov authored
- it is gowork that is now used by Go-related bits in SlapOS, so using gowork is preferred as example. Besides we need gowork to be able to use any third-party Go package. - other languages can use helloweb repository from under gowork/ tree as well. The hash of helloweb.git is changed, becuase its layout had to be too adjusted to match gowork mode: nexedi/helloweb@a072af78...8bfedac6
-
Kirill Smelkov authored
To pick up Python3 support. nexedi/helloweb@39fd89a3...a072af78
-
Kirill Smelkov authored
Don't drop support for Go1.9, as, even though Go1.9 is no longer supported, software/gitlab depends on it. Our Go1.10.X is also too outdated, but I'm not touching it here neither. /cc @alain.takoudjou, @luke
-
Kirill Smelkov authored
2019-01-21 17:56:18 slapos[13553] INFO While: 2019-01-21 17:56:18 slapos[13553] INFO Installing. 2019-01-21 17:56:18 slapos[13553] INFO Getting section instance-profile. 2019-01-21 17:56:18 slapos[13553] INFO Initializing section instance-profile. 2019-01-21 17:56:18 slapos[13553] INFO Installing recipe slapos.recipe.template. 2019-01-21 17:56:18 slapos[13553] INFO Getting distribution for 'slapos.recipe.template'. 2019-01-21 17:56:18 slapos[13553] INFO Error: Picked: slapos.recipe.template = 4.3 2019-01-21 17:56:19 slapos[13553] ERROR Failed to run buildout profile in directory '/srv/slapgrid/slappart7/srv/runner/software/19771f7b751ffc2a88162b15750c6069' 2019-01-21 18:01:21 slapos[26771] INFO While: 2019-01-21 18:01:21 slapos[26771] INFO Installing. 2019-01-21 18:01:21 slapos[26771] INFO Getting section helloweb-ruby. 2019-01-21 18:01:21 slapos[26771] INFO Initializing section helloweb-ruby. 2019-01-21 18:01:21 slapos[26771] INFO Getting option helloweb-ruby:input. 2019-01-21 18:01:21 slapos[26771] INFO Getting section helloweb-ruby-bundle. 2019-01-21 18:01:21 slapos[26771] INFO Initializing section helloweb-ruby-bundle. 2019-01-21 18:01:21 slapos[26771] INFO Getting option helloweb-ruby-bundle:make-targets. 2019-01-21 18:01:21 slapos[26771] INFO Getting section bundler. 2019-01-21 18:01:21 slapos[26771] INFO Initializing section bundler. 2019-01-21 18:01:21 slapos[26771] INFO Installing recipe rubygemsrecipe. 2019-01-21 18:01:21 slapos[26771] INFO Getting distribution for 'rubygemsrecipe'. 2019-01-21 18:01:21 slapos[26771] INFO Error: Picked: rubygemsrecipe = 0.2.2+slapos001 Ruby stuff was failing to download at all -> let's use the versions that are the same as currently used in software/gitlab. Based on patch by @romain. Helped by @jerome.
-
- 10 Oct, 2017 1 commit
-
-
Alain Takoudjou authored
-
- 22 Feb, 2017 1 commit
-
-
Kirill Smelkov authored
1.8.X is current stable series of Go. https://golang.org/doc/go1.8 https://golang.org/doc/devel/release.html#go1.8 Besides many other significant improvements it should now also support ARM64. /cc @jp /reviewed-by TrustMe (tested on helloworld)
-
- 19 Jul, 2016 1 commit
-
-
Kirill Smelkov authored
To pick up output \n and language/runtime version in output. nexedi/helloweb@0487fa7b...39fd89a3 /reviewed-by TrustMe
-
- 06 Jul, 2016 1 commit
-
-
Kirill Smelkov authored
1.6.X is current stable series of Go. https://golang.org/doc/go1.6 https://golang.org/doc/devel/release.html#go1.6 So switch helloweb and default golang to it. /reviewed-by TrustMe (tested on helloworld)
-
- 17 Jan, 2016 1 commit
-
-
Kirill Smelkov authored
It turned out we cannot currently use slapos.cookbook in software part of SR - the reason is slapos.cookbook egg depends on lxml egg, which in turn needs libxml to be also installed via slapos. For this reason stack/slapos.cfg has [slapos-cookbook] # NOTE _not_ slapos.cookbook recipe = zc.recipe.egg eggs = ${lxml-python:egg} ... and lxml-python is lxml building recipe to build it together with libxml: [lxml-python] recipe = zc.recipe.egg:custom egg = lxml rpath = ${libxml2:location}/lib/ ${libxslt:location}/lib/ ${zlib:location}/lib/ environment = lxml-python-env ... So underlying idea, as I understand it, is: every SR contains slapos-cookbook in parts and this way lxml-python gets build. Then when there is slapos.cookbook egg usage, it is already correctly built. BUT This works when such slapos.cookbook egg usage happens _only_ in instance part of an SR: otherwise, if buildout sees slapos.cookbook egg usage in some recipe, e.g. like it currently is in helloweb-ruby: [helloweb-ruby] recipe = slapos.cookbook:wrapper ... it _first_ tries to install slapos.cookbook egg directly - as needed for recipes eggs are installed as a first step, _before_ further buildout processing. What happens then is that slapos.cookbook (note not "-") egg sources and dependencies are downloaded from pypi, including lxml egg, all are tried to build, and in lxml egg it fails this way: ... Processing lxml-3.5.0 Writing /tmp/tmpLGK4xWbuild/lxml-3.5.0/setup.cfg Running setup.py -q bdist_egg --dist-dir /tmp/tmpLGK4xWbuild/lxml-3.5.0/egg-dist-tmp-DJvofa Building lxml version 3.5.0. Building without Cython. ERROR: /bin/sh: 1: xslt-config: not found ** make sure the development packages of libxml2 and libxslt are installed ** Using build configuration of libxslt In file included from src/lxml/lxml.etree.c:323:0: src/lxml/includes/etree_defs.h:14:31: fatal error: libxml/xmlversion.h: No such file or directory #include "libxml/xmlversion.h" ^ compilation terminated. Compile failed: command 'gcc' failed with exit status 1 /tmp/tmpLGK4xWbuild/lxml-3.5.0/temp/xmlXPathInitGlEAOF.c:1:26: fatal error: libxml/xpath.h: No such file or directory #include "libxml/xpath.h" ^ compilation terminated. ********************************************************************************* Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed? ********************************************************************************* error: Setup script exited with error: command 'gcc' failed with exit status 1 An error occurred when trying to install lxml 3.5.0. Look above this message for any errors that were output by easy_install. Could't load zc.buildout entry point wrapper from slapos.cookbook: Couldn't install: lxml 3.5.0. While: Installing. Getting section helloweb-ruby. Initializing section helloweb-ruby. Installing recipe slapos.cookbook. Error: Couldn't install: lxml 3.5.0 Previously it probably used to work because we had system libxml installed, and this way lxml compilation succeeded (but was incorrect from slapos point of view). ( The problem turned out to be already known somehow - see e.g. c7d00913 "Initial neoppod commit." and look for "Note on LXML/END LXML" there ) Solution could be: either fix slapos.cookbook installation via e.g. teaching buildout to take into account pre-dependencies for eggs (for lxml) or just to avoid using slapos.cookbook:wrapper for executable generation. While @kazuhiko is working on the first more-generic solution, here goes a simpler one to just make helloweb component alive again: like it is done in a lot of places (e.g. in software/kvm/) let's use collective.recipe.template to generate a short shell script. NOTE previously the command line was ${bundler:bundle} exec sh -c 'helloweb.rb "$@"' ${:_buildout_section_name_} but now it is the same with "$@" appended: exec ${bundler:bundle} exec sh -c 'helloweb.rb "$@"' ${:_buildout_section_name_} "$@" The reason is slapos.cookbook:wrapper uses slapos.recipe.librecipe.execute.generic_exec() in generated script, which appends sys.argv[1:] to the command-line implicitly: def generic_exec(args): ... os.execve(exec_list[0], exec_list + sys.argv[1:], exec_env) ^^^^^^^^^^^^^^ https://lab.nexedi.com/nexedi/slapos/blob/54bbe0a9/slapos/recipe/librecipe/execute.py#L84 that's why last "$@" was not present in original version. P.S. Otherwise currently slapos.cookbook is used only in instance parts of recipes in whole slapos.git /reviewed-by TrustMe /debugged-with @kazuhiko /cc @vpelletier
-
- 03 Nov, 2015 4 commits
-
-
Kirill Smelkov authored
We added support for Go in the previous patch. Let's now illustrate how to use the toolchain and build simple service based on it. /cc @gabriel, @Camata
-
Kirill Smelkov authored
To illustrate how to build Ruby software, let's add helloweb-ruby component and integrate it into helloworld SR as a service. helloweb-ruby installation is a bit tricky, because we do not have it initially as a released gem, and have to build it with Bundler by hand. Changes for integration into helloworld services infrastructure are small, thanks for the "kind" rework we did in previous patch. /cc @kazuhiko
-
Kirill Smelkov authored
Prepare to have several helloweb programs each written in its own language, and installed into bin/ as helloworld-<language> and exposed as separate service to the web on its own port. For component/helloweb we just rename installed script and section. For software/helloworld we split helloweb & helloweb-promise section into base and generate requested helloweb-<kinds> & friends via jinja2 programming; the same for exposing url for each kind. So far it is only preparatory changes for new kinds - i.e. instance code now supports it, but the only kind so far is still python. /cc @jerome
-
Kirill Smelkov authored
This - better illustrates what components do (provide building recipes for programs) and what software do (gather components and provide recipes for instances). - illustrates how to build the software properly - usually we build eggs or scripts with zc.recipe.egg:* , not generate python programs via jinja2 templating. Because when installing via egg, it is possible to import other installed eggs relatively straghtforward, and for jinja2 way it is hard to do. The helloweb program itself is moved into newly introduced helloweb.git repository and, as almost all other software, becomes separate from slapos.git . /cc @jerome
-