Copying files using Ansible

Introduction

Copying large numbers of files around - you would have thought this would be easy using Ansible. Most of what we do with Ansible is copying files and editing them. It turns out to be rather difficult to get right.

Copy module

The copy module seems like the correct thing to use at first glance. It copies files from the build host to remote locations. So I can clone the repository of files to deploy and send them off to where they need to go? Brilliant! There is a note at the bottom

ORA-13831: SQL profile or patch name specified is invalid

We had a process error with the above error message. I believe this is related to Oracle bug 27496360 which is a duplicate of 29942554, which is apparently in QA, but is targeted for database 20.1. It being 2019, Oracle haven’t released Oracle 20 yet, so we have no fix. We note it seems to be triggered by applying critical patches. We have an SR open for this which is attached to the bug.

PeopleCode Debugger - Setup and Diagnosis

The debugger requires application designer to be run in three tier mode, i.e. it should connect to the application server workstation listener rather than to the database itself.

We found that to achieve this we had to do the following:

On the application server, run psadmin, and administer the domain where the debugger is to be switched on. As of tools 8.57 this is done by choosing the following options from the menu. Note that the domain will be shut down once the configure option is chosen.

Gitlab Inventories, Private Keys and Secrets

Secrets and the Problem with Build Servers

I am not totally sure I understand this, so let’s see if I do when I write it down.

I decided that gitlab needs to stop accessing hosts using keys from the gitlab runner, because this means:

  1. Everything on gitlab runner can access every VM
  2. If the gitlab runner moves, nothing can access any VM

So 1 is too open, and 2 just doesn’t work. While I could configure a gitlab runner per environment, it also strikes me that the secrets are in the ansible build directory and shouldn’t be. We need a better approach.

What is automation?

What is automation

A colleague asked me if I could give them an overview of automation. It is something we do sometimes without thinking too much about it.

Think about Lean Enterprise. It is all about making things more efficient.

A concrete example

Technical staff like me can apply this principle to what we do daily. Here is a simple example of what might have to be done to deploy an imaginary application.

Oracle Sales: Cloud Analytics, Blockchain, IoT, AI - HEUG EMEA 2019

Oracle puts effort into selling at HEUG, which makes sense because we are all users of Oracle software. It is interesting to know what is out there, but the likelihood is we will never get to use most of it. Also, Oracle pushes cloud which I find quite depressing because I don’t know where I fit in to the new cloud paradigm.

I made notes from a couple of these sessions, which are quite short, so I will combine them here.

Journey to the Cloud - HEUG EMEA 2019

Is the cloud my friend?

I am concerned about the cloud. As a DBA I believe the idea is to replace most of what I do with a cloud provider. So if I want to keep working, should I work for a cloud provider, or change what I do? In the mean time I am also trying to ensure I can deliver a better service than the cloud providers using similar technologies in a way that is more responsive to the needs of my customers. So it is interesting to learn the experiences of Jo Ellen Dinucci, Associate VP, Finance and Administration - Boise State University during their journey to the cloud.

Celebrating 10 years of failure - HEUG EMEA 2019

Session Celebrating 10 years of failure, because you won’t succeed from the start.

Sarah Kobus, University of Amsterdam

I thought this looked interesting, not least because I have recently realised that getting everything perfect all the time is not a realistic or desirable goal. As if to demonstrate the truth of what she was saying, her co-presenter was ill, so Sarah had to present the session alone!

How good are we at learning from failures?

Everyone encounters failure. As an illustration Sarah spoke about replacing their Student Information System. The core issue encountered was not investing enough in changing the business processes to work well with the new system.