No description
Find a file
Justin Stephenson 6f5ec24e16 Drop moment.js dependency
Addresses CVE-2022-24785
2022-05-19 14:17:07 -04:00
.semaphore CI: Update image to ubuntu 20.04 2022-04-19 15:14:37 -04:00
po manifest2po: Parse also docs from manifest 2020-02-03 11:38:06 -05:00
src Drop moment.js dependency 2022-05-19 14:17:07 -04:00
test Tests: Assert pause state with a later command in rec1 2022-04-19 15:53:33 -04:00
.babelrc Move to babel 7 2018-08-29 00:40:49 +02:00
.eslintignore Add more sample content to subscriptions page 2017-07-26 10:33:14 +02:00
.eslintrc.json Use current babel/eslint integration 2021-11-17 13:05:47 -05:00
.gitignore Move to xz dist tarballs 2021-11-17 13:05:47 -05:00
.tasks Updated dependencies to match latest starterkit 2020-07-24 12:53:46 -04:00
.travis.yml Add .travis.yml (#15) 2017-10-19 17:54:52 +02:00
cockpit-session-recording.spec.in Move to xz dist tarballs 2021-11-17 13:05:47 -05:00
cockpituous-release Updated dependencies to match latest starterkit 2020-07-24 12:53:46 -04:00
Dockerfile Update Docker image and TEST_OS run to Fedora 35 2021-11-16 08:54:31 -05:00
LICENSE Initial commit with a LICENSE and README 2017-06-14 18:19:15 +02:00
Makefile Sync Makefile closer to starter-kit 2021-11-17 13:05:47 -05:00
org.cockpit-project.session-recording.metainfo.xml metainfo: Fix launchable and update description 2020-07-14 08:36:43 -04:00
package.json Drop moment.js dependency 2022-05-19 14:17:07 -04:00
README.md Update README.md 2019-02-18 14:44:41 +01:00
Vagrantfile vagrant: Use rsync backend for file sharing 2018-06-25 14:28:42 +02:00
webpack.config.js Use current babel/eslint integration 2021-11-17 13:05:47 -05:00

Cockpit Session Recording

Module for Cockpit which provides session recording configuration and playback. It requires tlog to record terminal sessions. SSSD is required to manage which users / groups are recorded. Systemd Journal is used to store recordings. Ansible role for session-recording is here.

Demos & Talks:

GitHub Organization:

Getting and building the source

Make sure you have npm available (usually from your distribution package). These commands check out the source and build it into the dist/ directory:

git clone https://github.com/Scribery/cockpit-session-recording.git
cd cockpit-session-recording
make

Installing

make install compiles and installs the package in /usr/share/cockpit/. The convenience targets srpm and rpm build the source and binary rpms, respectively. Both of these make use of the dist-gzip target, which is used to generate the distribution tarball. In production mode, source files are automatically minified and compressed. Set NODE_ENV=production if you want to duplicate this behavior.

For development, you usually want to run your module straight out of the git tree. To do that, link that to the location were cockpit-bridge looks for packages:

mkdir -p ~/.local/share/cockpit
ln -s `pwd`/dist ~/.local/share/cockpit/session-recording

After changing the code and running make again, reload the Cockpit page in your browser.

Running eslint

Cockpit Starter Kit uses ESLint to automatically check JavaScript code style in .jsx and .es6 files.

The linter is executed within every build as a webpack preloader.

For developer convenience, the ESLint can be started explicitly by:

$ npm run eslint

Violations of some rules can be fixed automatically by:

$ npm run eslint:fix

Rules configuration can be found in the .eslintrc.json file.

Credits

Cockpit-session-recording is based on starter-kit.