R&D

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


Easy install of the CUE editor

The latest version of ece-install, 3.1.1, can install the CUE web editor and configure it, including installing and setting up a web server in front of it with correct CORS headers.

To install CUE using ece-install, you need to add our stable APT repo to /etc/apt/sources.list.d/escenic.list and add our repo key to your system's APT key ring. Then finally, install the scripts and installer packages:

```

echo deb http://user:pass@apt.escenic.com stable main non-free >> /etc/apt/sources.l

(…)
read more →

by Torstein Krause Johansen, 382 words, updated: Friday May 19 2017 13:58


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


Interesting links for November

Recently interesting links — November 2016

A varied and inconsistent list of recently interesting items (for some definition of recent, and some definition of interesting). Shamelessly copied from the series of similar posts from the Financial Times Labs.

APIs

Amazon just had its christmas special, and threw out a containerload of APIs. Some notables:

  • [Rekognition](https://aws.amazon.com/
(…)
read more →

by Erik Mogensen, 724 words, updated: Thursday December 01 2016 20:55


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


Interesting links for October

Recently interesting links — October 2016

A varied and inconsistent list of recently interesting items (for some definition of recent, and some definition of interesting). Shamelessly copied from the series of similar posts from the Financial Times Labs.

Web

18F's Front end guide: The standard upon which the front end dev

(…)
read more →

by Erik Mogensen, 349 words, updated: Monday October 31 2016 10:23


Enrichment services: Access control

In this second instalment of enrichment services (see part 1 for an introduction), we'll look at security and how to do access control. When implementing enrichment services, it is often necessary to inspect things in the web service, or even perform web service actions on behalf of the user. Since the enrichment service itself is accessible using HTTP, it is important to protect the enrichment service using standa

(…)
read more →

by Erik Mogensen, 3402 words, updated: Wednesday September 28 2016 14:11


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