diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index e69de29..0000000
diff --git a/Dockerfile b/Dockerfile
deleted file mode 100644
index 107c5bc..0000000
--- a/Dockerfile
+++ /dev/null
@@ -1,71 +0,0 @@
-FROM registry.fedoraproject.org/fedora:28
-
-# Port on which will apache run
-EXPOSE 8080
-
-# Image metadata
-ENV NAME=perl \
- PERL_VERSION=5.24 \
- VERSION=0 \
- RELEASE=1 \
- ARCH=x86_64
-
-# Set labels used in OpenShift to describe the builder images
-LABEL com.redhat.component="$NAME" \
- name="$FGC/$NAME" \
- summary="Perl 5 is a highly capable, feature-rich programming language." \
- description="Perl 5 is a highly capable, feature-rich programming language with over 29 years of development. Perl 5 runs on over 100 platforms." \
- version="$VERSION" \
- release="$RELEASE.$DISTTAG" \
- architecture="$ARCH" \
- usage="s2i build file:///your/app modularitycontainers/perl your-app" \
- io.k8s.description="Platform for building and running Perl 5.24 applications" \
- io.k8s.display-name="Apache 2.4 with mod_perl/5.24" \
- io.openshift.expose-services="8080:http" \
- io.openshift.tags="builder,perl,perl524" \
- io.openshift.s2i.scripts-url=image:///usr/local/s2i
-
-# Perl and build tools install + user addition
-
-RUN BUILD_TOOlS="bsdtar \
- findutils \
- gcc \
- make \
- gettext \
- tar \
- wget \
- python " && \
- dnf install -y --setopt=tsflags=nodocs perl perl-devel mod_perl cpan cpanminus httpd \
- $BUILD_TOOlS && \
- dnf clean all && \
- mkdir -p /opt/app-root/src/ && \
- useradd -u 1001 -r -g 0 -d /opt/app-root/src -s /sbin/nologin \
- -c "Default Application User" default && \
- chown -R 1001:0 /opt/app-root
-
-# Copy s2i files
-COPY ./s2i/bin/ /usr/local/s2i
-
-# Copy apache configuration
-COPY ./contrib/ /opt/app-root
-
-# Drop the root user
-RUN mkdir -p /opt/app-root/etc/httpd.d && \
- sed -i -f /opt/app-root/etc/httpdconf.sed etc/httpd/conf/httpd.conf && \
- chmod -R og+rwx /var/run/httpd /opt/app-root/etc/httpd.d && \
- chown -R 1001:0 /opt/app-root && chmod -R ug+rwx /opt/app-root
-
-USER 1001
-
-# Copy executable utilities.
-COPY bin/ /usr/bin/
-
-# Copy help file
-COPY root/help.1 /
-
-# Directory with the sources is set as the working directory so all STI scripts
-# can execute relative to this path.
-WORKDIR /opt/app-root/src
-
-# Set the default command to print the usage
-CMD /usr/local/s2i/usage
diff --git a/README.md b/README.md
deleted file mode 100644
index 06cfba0..0000000
--- a/README.md
+++ /dev/null
@@ -1,124 +0,0 @@
-# Perl S2I
-This repository contains the sources for S2I builder image for perl 5.24 as well as some sample applications. This is a port to Fedora of software collections Perl located [here](https://github.com/sclorg/s2i-perl-container). Please note that this solution uses httpd 2.4 to display results.
-
-# Usage
-## Docker
-First you need to build the builder image. After you have the builder image, you can use it for a S2I build. You can build and run the sample app like this:
-```
-$ docker build --tag=koscicz/perl .
-$ s2i build https://github.com/container-images/perl.git --context-dir=test/sample-test-app/ koscicz/perl perl-sample-app
-$ docker run -p 8080:8080 perl-sample-app
-```
-This will build and run you application on 127.0.0.1:8080. You can also build the builder image by running `make`. This will also tag your image as koscicz/perl.
-
-## Openshift
-You can use the `openshift-template.yml` in this repository to run your application in Openshift. You can either use web interface, in which case you'll just have to fill out a form, requiring a source repository for your app and name of this app. In case you want to use cli, you can do it like this, after you login:
-```
-$ oc new-project perl-test
-$ oc new-app https://raw.githubusercontent.com/container-images/perl/master/openshift-template.yml -p APP_NAME="perl-example" -p SOURCE_REPOSITORY="https://github.com/kosciCZ/perl-example"
-```
-These commands will build the sample application on your Openshift platform.
-
-# Testing
-This repository contains a `test` folder with some tests to ensure proper functionality. You can run test by using Makefile. You have two options:
-* `make all` This will build, tag and test the image
-* `make test` This will run the test on the image, that is defined in the Makefile. By default it is koscicz/perl
-Or you can execute the test script directly, as described below in [Repository organization](#repository-organization)
-
-Repository organization
-------------------------
-* **Dockerfile**
-
- Fedora based Dockerfile.
-
-* **`s2i/bin/`**
-
- This folder contains scripts that are run by [S2I](https://github.com/openshift/source-to-image):
-
- * **assemble**
-
- Used to install the sources into a location where the application
- will be run and prepare the application for deployment (eg. installing
- modules, etc.).
- In order to install application dependencies, the application must contain a
- `cpanfile` file, in which the user specifies the modules and their versions.
- An example of a [cpanfile](https://github.com/container-images/perl/blob/master/test/sample-test-app/cpanfile) is available within our test application.
-
- All files with `.cgi` and `.pl` extension are handled by mod_perl.
- If exactly one file with `.psgi` extension exists in the top-level
- directory, the mod_perl will be autoconfigured to execute the PSGI
- application for any request URI path with Plack's mod_perl adaptor.
-
- * **run**
-
- This script is responsible for running the application, using the
- Apache web server.
-
- * **usage***
-
- This script prints the usage of this image.
-
-* **`contrib/`**
-
- This folder contains a file with commonly used modules.
-
-* **`test/`**
-
- This folder contains some sample applications you can use to test you image.
-
- * **`sample-test-app/`**
-
- A simple Perl application used for testing purposes by the [S2I](https://github.com/openshift/source-to-image) test framework.
-
- * **run**
-
- This is a script that runs a test suite on the builder image, to ensure it has all the necessary functionality.
- Run it by `./run IMAGE`, where `IMAGE` is your builder image.
-
-Environment variables
----------------------
-
-To set environment variables, you can place them as a key value pair into a `.sti/environment`
-file inside your source code repository.
-
-* **ENABLE_CPAN_TEST**
-
- Allow the installation of all specified cpan packages and the running of their tests. The default value is `false`.
-
-* **CPAN_MIRROR**
-
- This variable specifies a mirror URL which will used by cpanminus to install dependencies.
- By default the URL is not specified.
-
-* **PERL_APACHE2_RELOAD**
-
- Set this to "true" to enable automatic reloading of modified Perl modules.
-
-* **HTTPD_START_SERVERS**
-
- The [StartServers](https://httpd.apache.org/docs/2.4/mod/mpm_common.html#startservers)
- directive sets the number of child server processes created on startup. Default is 8.
-
-* **HTTPD_MAX_REQUEST_WORKERS**
-
- Number of simultaneous requests that will be handled by Apache. The default
- is 256, but it will be automatically lowered if memory is limited.
-
-* **PSGI_FILE**
-
- Override PSGI application detection.
-
- If the PSGI_FILE variable is set to empty value, no PSGI application will
- be detected and mod_perl not be reconfigured.
-
- If the PSGI_FILE variable is set and non-empty, it will define path to
- the PSGI application file. No detection will be used.
-
- If the PSGI_FILE variable does not exist, autodetection will be used:
- If exactly one ./*.psgi file exists, mod_perl will be configured to
- execute that file.
-
-* **PSGI_URI_PATH**
-
- This variable overrides location URI path that is handled path the PSGI
- application. Default value is "/".
\ No newline at end of file
diff --git a/bin/cgroup-limits b/bin/cgroup-limits
deleted file mode 100755
index 3107fbf..0000000
--- a/bin/cgroup-limits
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/usr/bin/python
-
-"""
-Script for parsing cgroup information
-
-This script will read some limits from the cgroup system and parse
-them, printing out "VARIABLE=VALUE" on each line for every limit that is
-successfully read. Output of this script can be directly fed into
-bash's export command. Recommended usage from a bash script:
-
- set -o errexit
- export_vars=$(cgroup-limits) ; export $export_vars
-
-Variables currently supported:
- MAX_MEMORY_LIMIT_IN_BYTES
- Maximum possible limit MEMORY_LIMIT_IN_BYTES can have. This is
- currently constant value of 9223372036854775807.
- MEMORY_LIMIT_IN_BYTES
- Maximum amount of user memory in bytes. If this value is set
- to the same value as MAX_MEMORY_LIMIT_IN_BYTES, it means that
- there is no limit set. The value is taken from
- /sys/fs/cgroup/memory/memory.limit_in_bytes
- NUMBER_OF_CORES
- Number of detected CPU cores that can be used. This value is
- calculated from /sys/fs/cgroup/cpuset/cpuset.cpus
- NO_MEMORY_LIMIT
- Set to "true" if MEMORY_LIMIT_IN_BYTES is so high that the caller
- can act as if no memory limit was set. Undefined otherwise.
-"""
-
-from __future__ import print_function
-import sys
-
-
-def _read_file(path):
- try:
- with open(path, 'r') as f:
- return f.read().strip()
- except IOError:
- return None
-
-
-def get_memory_limit():
- """
- Read memory limit, in bytes.
- """
-
- limit = _read_file('/sys/fs/cgroup/memory/memory.limit_in_bytes')
- if limit is None or not limit.isdigit():
- print("Warning: Can't detect memory limit from cgroups",
- file=sys.stderr)
- return None
- return int(limit)
-
-
-def get_number_of_cores():
- """
- Read number of CPU cores.
- """
-
- core_count = 0
-
- line = _read_file('/sys/fs/cgroup/cpuset/cpuset.cpus')
- if line is None:
- print("Warning: Can't detect number of CPU cores from cgroups",
- file=sys.stderr)
- return None
-
- for group in line.split(','):
- core_ids = list(map(int, group.split('-')))
- if len(core_ids) == 2:
- core_count += core_ids[1] - core_ids[0] + 1
- else:
- core_count += 1
-
- return core_count
-
-
-if __name__ == "__main__":
- env_vars = {
- "MAX_MEMORY_LIMIT_IN_BYTES": 9223372036854775807,
- "MEMORY_LIMIT_IN_BYTES": get_memory_limit(),
- "NUMBER_OF_CORES": get_number_of_cores()
- }
-
- env_vars = {k: v for k, v in env_vars.items() if v is not None}
-
- if env_vars.get("MEMORY_LIMIT_IN_BYTES", 0) >= 92233720368547:
- env_vars["NO_MEMORY_LIMIT"] = "true"
-
- for key, value in env_vars.items():
- print("{0}={1}".format(key, value))
\ No newline at end of file
diff --git a/bin/fix-permissions b/bin/fix-permissions
deleted file mode 100755
index b6ab3fd..0000000
--- a/bin/fix-permissions
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-# Allow this script to fail without failing a build
-set +e
-
-# Fix permissions on the given directory to allow group read/write of
-# regular files and execute of directories.
-chgrp -R 0 $1;
-find -L $1 -xtype l -exec chgrp 0 {} \;
-chmod -R g+rw $1;
-find -L $1 -xtype l -exec chmod g+rw {} \;
-find $1 -type d -exec chmod g+x {} +
\ No newline at end of file
diff --git a/contrib/etc/httpd.conf b/contrib/etc/httpd.conf
deleted file mode 100644
index 66dc0fb..0000000
--- a/contrib/etc/httpd.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-
-LoadModule perl_module modules/mod_perl.so
-DirectoryIndex index.pl
-
-PerlSwitches -I./extlib/lib/perl5
-
-
- SetHandler perl-script
- PerlResponseHandler ModPerl::PerlRun
- Options +ExecCGI +SymLinksIfOwnerMatch
- PerlSendHeader On
-
-
-
- Require all granted
-
-
-IncludeOptional /opt/app-root/etc/httpd.d/*.conf
\ No newline at end of file
diff --git a/contrib/etc/httpd.d/50-mpm.conf.template b/contrib/etc/httpd.d/50-mpm.conf.template
deleted file mode 100644
index ca18659..0000000
--- a/contrib/etc/httpd.d/50-mpm.conf.template
+++ /dev/null
@@ -1,11 +0,0 @@
-# This value should mirror what is set in MinSpareServers.
-StartServers ${HTTPD_START_SERVERS}
-MinSpareServers ${HTTPD_START_SERVERS}
-MaxSpareServers ${HTTPD_MAX_SPARE_SERVERS}
-# The MaxRequestWorkers directive sets the limit on the number of
-# simultaneous requests that will be served.
-# The default value, when no cgroup limits are set is 256.
-MaxRequestWorkers ${HTTPD_MAX_REQUEST_WORKERS}
-ServerLimit ${HTTPD_MAX_REQUEST_WORKERS}
-MaxConnectionsPerChild 4000
-MaxKeepAliveRequests 100
diff --git a/contrib/etc/httpdconf.sed b/contrib/etc/httpdconf.sed
deleted file mode 100644
index 45f14db..0000000
--- a/contrib/etc/httpdconf.sed
+++ /dev/null
@@ -1,7 +0,0 @@
-s/^Listen 80/Listen 0.0.0.0:8080/
-s/^User apache/User default/
-s/^Group apache/Group root/
-s%^DocumentRoot "/var/www/html"%DocumentRoot "/opt/app-root/src"%
-s%^" "DATE 11.04.2017" ""
-.BR perl (1)
-\-\- S2I builder of perl applications
-.SH USAGE
-.PP
-To pull the perl container run:
-.PP
-.RS
-.nf
- # docker pull koscicz/perl
-.fi
-.RE
-.PP
-To build your perl application use run:
-.PP
-.RS
-.nf
- # s2i build koscicz/perl
-.fi
-.RE
-.PP
-To run your application in docker container:
-.PP
-.RS
-.nf
- # docker run \-p 8080:8080
-.fi
-.RE
-.SH ENVIROMENT VARIABLES
-.PP
-To set environment variables, you can place them as a key value pair into a \fB\fC\&.sti/environment\fR
-file inside your source code repository.
-.PP
-ENABLE_CPAN_TEST
-.PP
-.RS
-.nf
-Allow the installation of all specified cpan packages and the running of their tests. The default value is `false`.
-.fi
-.RE
-.PP
-CPAN_MIRROR
-.PP
-.RS
-.nf
-This variable specifies a mirror URL which will used by cpanminus to install dependencies.
-By default the URL is not specified.
-.fi
-.RE
-.PP
-PERL_APACHE2_RELOAD
-.PP
-.RS
-.nf
-Set this to "true" to enable automatic reloading of modified Perl modules.
-.fi
-.RE
-.PP
-HTTPD_START_SERVERS
-.PP
-.RS
-.nf
-The [StartServers](https://httpd.apache.org/docs/2.4/mod/mpm_common.html#startservers)
-directive sets the number of child server processes created on startup. Default is 8.
-.fi
-.RE
-.PP
-HTTPD_MAX_REQUEST_WORKERS
-.PP
-.RS
-.nf
-Number of simultaneous requests that will be handled by Apache. The default
-is 256, but it will be automatically lowered if memory is limited.
-.fi
-.RE
-.PP
-PSGI_FILE
-.PP
-.RS
-.nf
-Override PSGI application detection.
-
-If the PSGI_FILE variable is set to empty value, no PSGI application will
-be detected and mod_perl not be reconfigured.
-
-If the PSGI_FILE variable is set and non\-empty, it will define path to
-the PSGI application file. No detection will be used.
-
-If the PSGI_FILE variable does not exist, autodetection will be used:
-If exactly one ./*.psgi file exists, mod_perl will be configured to
-execute that file.
-.fi
-.RE
-.PP
-PSGI_URI_PATH
-.PP
-.RS
-.nf
-This variable overrides location URI path that is handled path the PSGI
-application. Default value is "/".
-.fi
-.RE
diff --git a/root/help.md b/root/help.md
deleted file mode 100644
index bfb35d0..0000000
--- a/root/help.md
+++ /dev/null
@@ -1,63 +0,0 @@
-perl(1) -- S2I builder of perl applications
-=============================================
-
-## USAGE
-
-To pull the perl container run:
-
- # docker pull koscicz/perl
-
-To build your perl application use run:
-
- # s2i build koscicz/perl
-
-To run your application in docker container:
-
- # docker run -p 8080:8080
-
-## ENVIROMENT VARIABLES
-
-To set environment variables, you can place them as a key value pair into a `.sti/environment`
-file inside your source code repository.
-
-ENABLE\_CPAN\_TEST
-
- Allow the installation of all specified cpan packages and the running of their tests. The default value is `false`.
-
-CPAN_MIRROR
-
- This variable specifies a mirror URL which will used by cpanminus to install dependencies.
- By default the URL is not specified.
-
-PERL\_APACHE2\_RELOAD
-
- Set this to "true" to enable automatic reloading of modified Perl modules.
-
-HTTPD\_START\_SERVERS
-
- The [StartServers](https://httpd.apache.org/docs/2.4/mod/mpm_common.html#startservers)
- directive sets the number of child server processes created on startup. Default is 8.
-
-HTTPD\_MAX\_REQUEST\_WORKERS
-
- Number of simultaneous requests that will be handled by Apache. The default
- is 256, but it will be automatically lowered if memory is limited.
-
-PSGI_FILE
-
- Override PSGI application detection.
-
- If the PSGI_FILE variable is set to empty value, no PSGI application will
- be detected and mod_perl not be reconfigured.
-
- If the PSGI_FILE variable is set and non-empty, it will define path to
- the PSGI application file. No detection will be used.
-
- If the PSGI_FILE variable does not exist, autodetection will be used:
- If exactly one ./*.psgi file exists, mod_perl will be configured to
- execute that file.
-
-PSGI\_URI\_PATH
-
- This variable overrides location URI path that is handled path the PSGI
- application. Default value is "/".
\ No newline at end of file
diff --git a/s2i/bin/assemble b/s2i/bin/assemble
deleted file mode 100755
index 2363d37..0000000
--- a/s2i/bin/assemble
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/bash
-
-set -e
-
-shopt -s dotglob
-echo "---> Installing application source ..."
-mv /tmp/src/* ./
-
-if [ -d ./cfg ]; then
- echo "---> Copying configuration files..."
- if [ "$(ls -A ./cfg/*.conf)" ]; then
- cp -v ./cfg/*.conf /opt/app-root/etc/httpd.d/
- fi
-fi
-
-# Allow for http proxy to be specified in uppercase
-if [[ -n "${HTTP_PROXY:-}" && -z "${http_proxy:-}" ]]; then
- export http_proxy=$HTTP_PROXY
-fi
-
-export CPAN_MIRROR=${CPAN_MIRROR:-""}
-
-MIRROR_ARGS=""
-
-if [ -n "$CPAN_MIRROR" ]; then
- MIRROR_ARGS="--mirror $CPAN_MIRROR"
-fi
-
-# Don't test installed Perl modules by default
-if [ "${ENABLE_CPAN_TEST}" = true ]; then
- export ENABLE_CPAN_TEST=""
-else
- export ENABLE_CPAN_TEST="--notest"
-fi
-
-# Configure mod_perl for PSGI.
-# If PSGI_FILE variable is set but empty, skip it.
-# If PSGI_FILE is set and non-empty, use it.
-# If PSGI_FILE does not exist, check if exactly one ./*.psgi file exists and
-# use that file.
-# If PSGI_URI_PATH variable has a value, use it as a location. Default is "/".
-if [ ! -v PSGI_FILE ]; then
- PSGI_FILE=$(find -maxdepth 1 -name '*.psgi' -type f)
-fi
-PSGI_FILE_NUMBER=$(printf '%s' "$PSGI_FILE" | wc -l)
-if [ -n "$PSGI_FILE" -a "$PSGI_FILE_NUMBER" -eq 0 ]; then
- echo "---> PSGI application found in $PSGI_FILE"
- cat >> cpanfile <<"EOF"
-requires 'Plack::Handler::Apache2';
-EOF
- # XXX: Escape PSGI_FILE value against httpd control characters
- PSGI_FILE=$(printf '%s' "$PSGI_FILE" | sed -e 's/\\/\\\\/g' -e 's/"/\\"/g')
- cat > /opt/app-root/etc/httpd.d/40-psgi.conf <
- SetHandler perl-script
- PerlResponseHandler Plack::Handler::Apache2
- PerlSetVar psgi_app "$PSGI_FILE"
-
-EOF
-elif [ "$PSGI_FILE_NUMBER" -gt 0 ]; then
- echo "---> Multiple PSGI applications found:"
- printf '%s' "$PSGI_FILE"
- echo "---> Skipping PSGI autoconfiguration!"
-fi
-
-# Installing dependencies with cpanfile
-if [ -f "cpanfile" ]; then
- echo "---> Installing modules from cpanfile ..."
- cpanm $MIRROR_ARGS $ENABLE_CPAN_TEST -l extlib Module::CoreList
- cpanm $MIRROR_ARGS $ENABLE_CPAN_TEST -l extlib --installdeps .
-else
- echo "---> No cpanfile found, nothing to install"
-fi
-
-# Fix source directory permissions
-fix-permissions ./
\ No newline at end of file
diff --git a/s2i/bin/run b/s2i/bin/run
deleted file mode 100755
index 687feb1..0000000
--- a/s2i/bin/run
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/bin/bash
-
-set -e
-
-# CPAN can install scripts. They should be available from mod_perl too.
-export PATH=${PATH}:/opt/app-root/src/extlib/bin
-# And we have to set Perl include path too because mod_perl's PerlSwitches
-# does not apply to them.
-export PERL5LIB=/opt/app-root/src/extlib/lib/perl5
-
-# Warning: Please note that this will pass all environment variables available within the
-# container to mod_perl by means of PerlPassEnv in the env.conf file
-if [ ! -f /opt/app-root/etc/httpd.d/env.conf ]; then
- env | awk -F'=' '{print "PerlPassEnv "$1}' > /opt/app-root/etc/httpd.d/env.conf
-fi
-
-# Enable automatic reloading. This can be useful for debugging an application.
-PERL_APACHE2_RELOAD=${PERL_APACHE2_RELOAD:-}
-if [[ "${PERL_APACHE2_RELOAD,,}" == "true" ]]; then
- cat > /opt/app-root/etc/httpd.d/50-autoreload.conf < 0 ? MAX_SERVER_LIMIT : 1))
- export HTTPD_MAX_REQUEST_WORKERS=$((MAX_SERVER_LIMIT > 256 ? 256 : MAX_SERVER_LIMIT))
-fi
-
-export HTTPD_START_SERVERS=${HTTPD_START_SERVERS:-8}
-export HTTPD_MAX_SPARE_SERVERS=$((HTTPD_START_SERVERS+10))
-
-envsubst < /opt/app-root/etc/httpd.d/50-mpm.conf.template > /opt/app-root/etc/httpd.d/50-mpm.conf
-
-exec httpd -C 'Include /opt/app-root/etc/httpd.conf' -D FOREGROUND
\ No newline at end of file
diff --git a/s2i/bin/usage b/s2i/bin/usage
deleted file mode 100755
index ddfa51b..0000000
--- a/s2i/bin/usage
+++ /dev/null
@@ -1,11 +0,0 @@
-
-#!/bin/sh
-
-cat <