blogs

3 ways of using the Escenic packages

For quite some time now, we've provided DEB and RPM packages for our software. Using these packages, Escenic's software becomes an integrated part of the operating system and eases both installation and upgrade (and even downgrade!) of one or more components.

For RedHat based systems, there's one way of using these packages: ```

rpm -Uvh https://rpm.escenic.com/path/to/escenic-conte

(…)
read more →

by Torstein Krause Johansen, 2024 words, updated: Wednesday November 29 2017 12:55


GraphQL's role in the new presentation layer

In the new presentation layer, CUE Front, which is an option provided for Escenic Content Engine version 6.0 and onwards, we've adopted GraphQL, a "graph query language" developed by Facebook. As time has passed, our understanding of GraphQL has evolved, and this has spurred us to use GraphQL in some rather innovative ways.

Background

To start off with, we have created a rather large GraphQL schema that describes the information structure of the web servi

(…)
read more →

by Erik Mogensen, 1535 words, updated: Wednesday August 16 2017 13:25


Zero effort patching of Escenic6 systems

Thanks to the new escenic-content-engine-updater package, keeping Escenic systems up to date has never been easier.

# apt-get install escenic-content-engine-6.1
# apt-get install escenic-content-engine-updater-6.1

The updater package will take the currently deployed EAR file (it uses the entries in ece -i <instance> list-deployments and the corresponding file in /var/cache/escenic to find this) and re-packages that EAR file with whatever ECE and/or ECE plugin packages that you ha

(…)
read more →

by Torstein Krause Johansen, 439 words, updated: Friday May 05 2017 08:58


Watch the new YAML driven, APT based ece-install in action

Use the Escenic installer, ece-install, to install and configure a full Escenic stack consisting of a database, application server, memory cache, standalone Solr with 2 cores, search indexer, a caching server as well as creating a publication - all in just a few minutes.

If you run ece-install on Debian or Ubuntu, it'll use APT to install all the Escenic components and if you run it on RedHat or CentOS it'll use RPM.

Configure which server comp

(…)
read more →

by Torstein Krause Johansen, 153 words, updated: Thursday April 27 2017 14:05


Get Superman x-ray vision

We're big Linux users here at Escenic. We run our Escenic Cloud offering on Linux machines, we run our QA test automation server racks on Linux, our internal build and demo infrastructure run on Linux and many of our developers, consultants and operations staff use Linux on their laptops.

Common to all of these environment is that they run many pieces of server software and we want to know exactly what a given process does. However, it's sometimes not possible to get all the information we nee

(…)
read more →

by Torstein Krause Johansen, 324 words, updated: Wednesday April 12 2017 12:12


About the new presentation layer

Our new presentation layer, called CUE Front is a radical shift away from the existing presentation layer provided in Content Engine. Below, we provide an overview of the different technological choices we made, and some of the technologies in use. We offer the reasoning behind them, and some of the problems they aim to solve.

To start off with, there are a few important architectural choices:

  • Single Request paradigm
  • Statelessness

Then there's the actual list of technologies:

- Twig

(…)
read more →

by Erik Mogensen, 2440 words, updated: Tuesday March 21 2017 10:57


A tale of broken pipes

At Escenic we use a lot of bash as our glue language; it's widely available and pretty compatible across unixes. It also has an immense array of features, some of which are turned off by default, for good reason. One of these is pipefail which might catch you off guard if you (like us) weren't aware of some of the problems of pipes.

What is a pipe?

A pipe is simply the act of sending the output of one command into another. cat is a simple command, which outputs the co

(…)
read more →

by Erik Mogensen, 1014 words, updated: Monday January 02 2017 13:11


This is how you'll keep Escenic v6 websites updated

This is how you'll keep an Escenic v6 website on a Debian/Ubuntu based Linux distribution updated.

First, upgrade all the packages on your system, this of course, now includes Escenic Content Engine 6, all plugins as well as the new multi backend user interface, CUE:

# apt-get update
# apt-get upgrade

Then, change into the escenic user and apply the newly installed or upgraded versions to your current ECE:

$ ece -i engine1 repackage stop deploy start

This will replace a

(…)
read more →

by Torstein Krause Johansen, 622 words, updated: Friday November 04 2016 14:01


HOWTO Read Escenic Content Engine Log Files

tl;dr

To watch all log files related to ECE, run the following in a terminal:

$ tail -f /var/log/escenic/engine1-{tomcat,messages,catalina.out} \
          /opt/tomcat-engine1/logs/access.$(date --iso).log

Introduction

Knowing your way around the log files used by or indirectly related to the Escenic Content Engine will enable you to quickly get an overview of your system as well as identify root causes of misbehaving components.

This is a no-nonsense guide to the most important

(…)
read more →

by Torstein Krause Johansen, 706 words, updated: Monday October 10 2016 12:02


Diving into enrichment services

Enrichment services are a new breed of extension capabilities that are coming to CUE, allowing CUE to be extended and modified in a myriad of ways. Enrichment services are simple HTTP services that follow a particular flow, that CUE discovers along the way. These enrichment services will then guide CUE, telling it what to do next.

In this post we’ll introduce enrichment services, by showing how they could be used to solve a particular business requirement, including the complete source code

(…)
read more →

by Erik Mogensen, 2232 words, updated: Monday August 15 2016 07:37


Living on the bleeding edge: how we created this blog

{"wide-big":{"crop":{"x":0,"y":98.63252543975435,"width":1509.9999999999998,"height":538.5314685314685}}}

We had a number of requirements and wishes when we set out creating blogs.escenic.com a couple of them were:

  • We wanted to use the latest versions of all our products, including Escenic Content Engine and CUE the new web interface to replace both Escenic Content Studio in version 6.

  • Changes in the source code should be rolled out to the server as quickly and as hassle free as possible.

  • It should have a great developer experience (DX), writing a blo

(…)
read more →

by Torstein Krause Johansen, 462 words, updated: Tuesday August 16 2016 12:29


Creating Status Hero Reports from Org mode

{"wide-big":{"output":{"width":572,"height":204},"crop":{"x":0,"width":1024,"y":0,"height":367}}}

Here in R&D, we're using Status Hero for our daily status reports. Since I'm using Emacs and Org mode for my notes and TODO items, I wrote the following script to export these into a format suitable for my Status Hero report.

All my tasks, notes, Google Calendar entries and so on are stored in .org files on my computer. For this Status Hero report, however, I only want to include the items from my work.org as this is where I create the task items.

This is an exam

(…)
read more →

by Torstein Krause Johansen, 350 words, updated: Friday August 05 2016 13:20