[oe] [meta-oe][PATCH] gateone: Updated to version 1.2

Koen Kooi koen at dominion.thruhere.net
Sun Nov 24 08:12:19 UTC 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dan McDougall schreef op 20-11-13 04:22:
> This new version of Gate One uses a new configuration file format which 
> means the old server.conf is gone.  It now stores configuration files in 
> /etc/gateone/conf.d.  The /opt/gateone directory is also gone and instead
> the package installs like a regular Python module in site-packages.  SSL
> certificates/keys are stored in /etc/gateone/ssl/.
> 
> The new version requires python-tornado 3.1.1 (which was submitted 
> earlier today) and the python-futures package (which was also submitted 
> today).
> 
> An 80oe.conf file has been added specific to OpenEmbedded that replaces 
> the old pre-configured server.conf functionality.
> 
> The old patch that removes the init script checks has been deprecated by 
> the use of the --skip_init_scripts option which is now being passed to 
> setup.py.
> 
> Lastly, Gate One 1.2 is about twice as fast (benchmarked) as Gate One 1.1
> on the Beaglebone platform.
> 
> Signed-off-by: Dan McDougall <daniel.mcdougall at liftoffsoftware.com>

I massaged the patches to apply to 'dylan' and I ran into the following
problems:

1) the systemd service has:

	ConditionPathExists=|/var/lib/gateone

But that doesn't exist, so gateone will never get started.

2) Missing python stuff:

root at beaglebone:~# !jour
journalctl -a -b -f -u gateone
- -- Logs begin at Sat 2013-11-23 19:11:00 UTC. --
Nov 23 22:43:23 beaglebone systemd[1]: Started GateOne daemon.
Nov 23 22:43:37 beaglebone systemd[1]: Started GateOne daemon.
Nov 23 22:45:14 beaglebone systemd[1]: Starting GateOne daemon...
Nov 23 22:45:15 beaglebone systemd[1]: Started GateOne daemon.
Nov 23 22:45:15 beaglebone python[800]: Traceback (most recent call last):
Nov 23 22:45:15 beaglebone python[800]: File "/usr/bin/gateone", line 5, in
<module>
Nov 23 22:45:15 beaglebone python[800]: from pkg_resources import
load_entry_point
Nov 23 22:45:15 beaglebone python[800]: ImportError: No module named
pkg_resources
Nov 23 22:45:15 beaglebone systemd[1]: gateone.service: main process exited,
code=exited, status=1/FAILURE
Nov 23 22:45:15 beaglebone systemd[1]: Unit gateone.service entered failed
state.

Google suggests python-setuptools is missing

3) Even after installing setuptools:

Nov 24 08:08:59 beaglebone python[1068]: Traceback (most recent call last):
Nov 24 08:08:59 beaglebone python[1068]: File "/usr/bin/gateone", line 9, in
<module>
Nov 24 08:08:59 beaglebone python[1068]: load_entry_point('gateone==1.2.0',
'console_scripts', 'gateone')()
Nov 24 08:08:59 beaglebone python[1068]: File
"/usr/lib/python2.7/site-packages/gateone/core/server.py", line 3745, in main
Nov 24 08:08:59 beaglebone python[1068]: define_options(installed=installed)
Nov 24 08:08:59 beaglebone python[1068]: File
"/usr/lib/python2.7/site-packages/gateone/core/configuration.py", line 165,
in define_options
Nov 24 08:08:59 beaglebone python[1068]: additional_origins =
socket.gethostbyname_ex(socket.gethostname())
Nov 24 08:08:59 beaglebone python[1068]: socket.error: [Errno 110]
Connection timed out
Nov 24 08:08:59 beaglebone systemd[1]: gateone.service: main process exited,
code=exited, status=1/FAILURE
Nov 24 08:08:59 beaglebone systemd[1]: Unit gateone.service entered failed
state.

regards,

KOen

> ...move-init-check-it-looks-outside-the-sysr.patch | 38
> ---------------------- .../recipes-connectivity/gateone/gateone/80oe.conf
> | 23 +++++++++++++ .../gateone/gateone/server.conf                    |
> 5 --- .../recipes-connectivity/gateone/gateone_git.bb    | 32
> ++++++++++-------- .../gateone/gateone/gateone.service                |
> 2 +- 5 files changed, 43 insertions(+), 57 deletions(-) delete mode
> 100644
> meta-oe/recipes-connectivity/gateone/gateone/0001-setup.py-remove-init-check-it-looks-outside-the-sysr.patch
>
> 
create mode 100644 meta-oe/recipes-connectivity/gateone/gateone/80oe.conf
> delete mode 100644
> meta-oe/recipes-connectivity/gateone/gateone/server.conf
> 
> diff --git
> a/meta-oe/recipes-connectivity/gateone/gateone/0001-setup.py-remove-init-check-it-looks-outside-the-sysr.patch
> b/meta-oe/recipes-connectivity/gateone/gateone/0001-setup.py-remove-init-check-it-looks-outside-the-sysr.patch
>
> 
deleted file mode 100644
> index ef3a95b..0000000 ---
> a/meta-oe/recipes-connectivity/gateone/gateone/0001-setup.py-remove-init-check-it-looks-outside-the-sysr.patch
>
> 
+++ /dev/null
> @@ -1,38 +0,0 @@ -From a65ad6683688bb427efefe5e52137928c2736137 Mon Sep
> 17 00:00:00 2001 -From: Koen Kooi <koen at dominion.thruhere.net> -Date:
> Thu, 4 Apr 2013 13:04:03 +0200 -Subject: [PATCH] setup.py: remove init
> check, it looks outside the sysroot - -Signed-off-by: Koen Kooi
> <koen at dominion.thruhere.net> ---- - setup.py | 14 -------------- - 1 file
> changed, 14 deletions(-) - -diff --git a/setup.py b/setup.py -index
> 00c8ba1..4568679 100755 ---- a/setup.py -+++ b/setup.py -@@ -112,20
> +112,6 @@ redhat_script = os.path.join(setup_dir,
> 'scripts/init/gateone-redhat.sh') - gentoo_script =
> os.path.join(setup_dir, 'scripts/init/gateone-gentoo.sh') -
> temp_script_path = os.path.join(setup_dir, 'build/gateone') -
> temp_confd_path = os.path.join(setup_dir, 'build/gateone') --if
> os.path.exists('/etc/debian_version'): --    shutil.copy(debian_script,
> temp_script_path) --elif os.path.exists('/etc/redhat-release'): --
> shutil.copy(redhat_script, temp_script_path) --elif
> os.path.exists('/etc/gentoo-release'): --    shutil.copy(gentoo_script,
> temp_script_path) --    conf_file = [('/etc/conf.d', [ --
> os.path.join(setup_dir, 'scripts/conf/gateone') --    ])] -- --if
> os.path.exists(temp_script_path): --    init_script = [('/etc/init.d', [ 
> --        temp_script_path --    ])] - - # Put it all together -
> data_files = ( --- -1.8.1.4 - diff --git
> a/meta-oe/recipes-connectivity/gateone/gateone/80oe.conf
> b/meta-oe/recipes-connectivity/gateone/gateone/80oe.conf new file mode
> 100644 index 0000000..cde98bc --- /dev/null +++
> b/meta-oe/recipes-connectivity/gateone/gateone/80oe.conf @@ -0,0 +1,23
> @@ +// Some custom Gate One settings for OpenEmbedded +{ +    "*": { +
> "gateone": { // These settings apply to all of Gate One +
> "log_file_max_size": 5242880, // 5 megabyte logs for OE by default
> (default would normally be 100Mb) +            "log_file_num_backups": 2,
> // Default is normally 10 +            "origins": ["*"], // Every device
> has a unique origin +            "logging": "info", +
> "pid_file": "/var/run/gateone.pid", +            "session_dir":
> "/tmp/gateone", +            "user_dir": "/var/lib/gateone/users" +
> }, +        "terminal": { +            // Disabling session logging for
> embedded devices is a good idea (limited/slow storage) +
> "session_logging": false, +            "syslog_session_logging": false 
> +//             "commands": { +//                 // For some reason this
> doesn't work (never asks for the password) +//                 "login":
> "setsid /bin/login" // Normally this would emulate logging into the host
> console +//             } +        } +    } +} diff --git
> a/meta-oe/recipes-connectivity/gateone/gateone/server.conf
> b/meta-oe/recipes-connectivity/gateone/gateone/server.conf deleted file
> mode 100644 index 988b0d0..0000000 ---
> a/meta-oe/recipes-connectivity/gateone/gateone/server.conf +++ /dev/null 
> @@ -1,5 +0,0 @@ -session_logging = False -origins = "*" -command =
> "/var/lib/gateone/plugins/ssh/scripts/ssh_connect.py -S
> '/tmp/gateone/%SESSION%/%SHORT_SOCKET%' --sshfp -a
> '-oUserKnownHostsFile=%USERDIR%/%USER%/ssh/known_hosts'" -log_file_prefix
> = "/var/log/gateone.log" - diff --git
> a/meta-oe/recipes-connectivity/gateone/gateone_git.bb
> b/meta-oe/recipes-connectivity/gateone/gateone_git.bb index
> c5586b5..9c41a3b 100644 ---
> a/meta-oe/recipes-connectivity/gateone/gateone_git.bb +++
> b/meta-oe/recipes-connectivity/gateone/gateone_git.bb @@ -1,40 +1,46 @@ 
> DESCRIPTION = "HTML5 (plugin-free) web-based terminal emulator and SSH
> client" LICENSE = "AGPLv3" -LIC_FILES_CHKSUM =
> "file://LICENSE.txt;md5=ee5b168fc7de89a0cadc49e27830aa2c" 
> +LIC_FILES_CHKSUM =
> "file://LICENSE.txt;md5=834cbc6995db88433db17cdf8953a428" +HOMEPAGE =
> "http://liftoffsoftware.com/Products/GateOne"
> 
> -PR = "r8" +PR = "r1"
> 
> -PV = "1.1" -SRCREV = "ea5db3dcb3bbbe445ae6d1a5611c1f8d547c57b9" +PV =
> "1.2" +SRCREV = "1528d324088fc1c180b7fdf50f5b5c1af057eef6" SRC_URI =
> "git://github.com/liftoff/GateOne.git \ file://gateone-avahi.service \ -
> file://server.conf \ +           file://80oe.conf \ "
> 
> S = "${WORKDIR}/git"
> 
> -inherit distutils allarch +inherit distutils +export prefix =
> "${localstatedir}"
> 
> -export prefix = "${localstatedir}/lib" +DISTUTILS_INSTALL_ARGS =
> "--root=${D} \ +    --prefix=${prefix} \ +
> --install-lib=${PYTHON_SITEPACKAGES_DIR} \ +
> --install-data=${PYTHON_SITEPACKAGES_DIR} \ +
> --install-scripts=${bindir} \ +    --skip_init_scripts"
> 
> do_install_append() { -	install -d ${D}${localstatedir}/log/${BPN} - 
> install -m 0755 -d ${D}${sysconfdir}/avahi/services/ install -m 0644
> ${WORKDIR}/gateone-avahi.service ${D}${sysconfdir}/avahi/services/
> 
> -	install -m 0644 ${WORKDIR}/server.conf
> ${D}/var/lib/gateone/server.conf +	install -m 0755 -d
> ${D}${sysconfdir}/gateone/conf.d/ +	install -m 0644 ${WORKDIR}/80oe.conf
> ${D}${sysconfdir}/gateone/conf.d/80oe.conf }
> 
> -FILES_${PN} = "${localstatedir}/lib ${localstatedir}/log ${base_libdir}
> ${sysconfdir} ${libdir}/python*" -RDEPENDS_${PN} = "file \ -
> mime-support \ +FILES_${PN} = "${localstatedir}/lib ${bindir}
> ${base_libdir} ${sysconfdir} ${libdir}/python*" +RDEPENDS_${PN} =
> "mime-support \ openssh-ssh \ python-compression \ python-crypt \ 
> python-datetime \ python-email \ python-fcntl \ +
> python-futures \ python-html \ python-imaging \ python-io \ diff --git
> a/meta-systemd/meta-oe/recipes-connectivity/gateone/gateone/gateone.service
> b/meta-systemd/meta-oe/recipes-connectivity/gateone/gateone/gateone.service
>
> 
index 7ff6002..7b14d3e 100644
> ---
> a/meta-systemd/meta-oe/recipes-connectivity/gateone/gateone/gateone.service
>
> 
+++ b/meta-systemd/meta-oe/recipes-connectivity/gateone/gateone/gateone.service
> @@ -4,7 +4,7 @@ ConditionPathExists=|/var/lib/gateone
> 
> [Service] WorkingDirectory=/var/lib/gateone -ExecStart=/usr/bin/python
> gateone.py +ExecStart=/usr/bin/python /usr/bin/gateone
> 
> [Install] WantedBy=multi-user.target
> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
Comment: GPGTools - http://gpgtools.org

iD8DBQFSkbTjMkyGM64RGpERAlDVAJ42PJzu7FHIxSkjD3J3J+cEhayhRwCeKygc
eJddzZrLuhfFPXLwNl3PKHM=
=xtSM
-----END PGP SIGNATURE-----




More information about the Openembedded-devel mailing list