diff --git a/.gitignore b/.gitignore index 784a0d0..8906b1a 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,12 @@ .coverage venv + +*.aux +*.log +*.nav +*.out +*.pdf +*.snm +*.synctex.gz +*.toc diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8eda85e..9d92de0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ stages: - linting - test + - compile_slides flake8: @@ -27,3 +28,22 @@ test: before_script: - pip install pytest pytest-cov --no-cache-dir script: pytest --showlocals --cov=main --cov=main_test --cov-report=term-missing . + +slides: + stage: compile_slides + image: aergus/latex + before_script: + - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )' + - eval $(ssh-agent -s) + - echo "$SSH_KEY" | tr -d '\r' | ssh-add - > /dev/null + - mkdir -p ~/.ssh + - chmod 0700 ~/.ssh + - ssh-keyscan ynerant.fr >> ~/.ssh/known_hosts + - chmod 0644 ~/.ssh/known_hosts + script: + - latexmk -cd -pdf slides/seminaire-ci.tex + - scp slides/seminaire-ci.pdf gitlab-ci@ynerant.fr:gitlab-ftp/seminaire-ci.pdf + artifacts: + paths: + - slides/seminaire-ci.pdf + expire_in: 1 mo diff --git a/slides/beamerthemecrans.sty b/slides/beamerthemecrans.sty new file mode 100644 index 0000000..8a06323 --- /dev/null +++ b/slides/beamerthemecrans.sty @@ -0,0 +1,132 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%% BEAMER THEME FOR CRANS %%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% place in same folder as your .tex +% \usetheme{ens} in preamble +% also need crans-logo.png + +\NeedsTeXFormat{LaTeX2e}[1994/06/01] +\ProvidesPackage{ensbeamer}[2019/09/04 Beamer Theme] +\RequirePackage{tikz} +\RequirePackage{xcolor} + +\makeatletter +\newif\if@section\@sectionfalse +\DeclareOption{sectiontitle}{ + \@sectiontrue +} + +\ProcessOptions\relax + +\definecolor{rougecrans}{RGB}{207,14,34} % rougecrans ! + +\setbeamercolor{structure}{fg=rougecrans} +%\setbeamercolor{sidebar}{fg=rougecrans,bg=white} +\setbeamercolor{sidebar}{bg=white,fg=rougecrans} +%\setbeamercolor{title in sidebar}{fg=white} +%\setbeamercolor{section in sidebar}{fg=white} + \setbeamercolor{section in sidebar shaded}{fg=rougecrans!40} + \setbeamercolor{subsection in sidebar}{fg=rougecrans} + \setbeamercolor{subsection in sidebar shaded}{fg=rougecrans!60} + \setbeamercolor{frametitle}{fg=rougecrans,bg=white} + +\def\swidth{2cm} + +% +% ----------------------------- +% Title Page + +\setbeamerfont{title}{size=\huge} +\setbeamerfont{author}{size=\large} +\setbeamerfont{institut}{size=\Large} +\setbeamerfont{subtitle}{size=\Large} +\setbeamerfont{date}{size=\Large} +\setbeamertemplate{title page}{% +\begin{tikzpicture}[remember picture,overlay] +\fill[white] + (current page.north west) rectangle (current page.south east); +\node + at ([yshift=+.15\textheight]current page.center) (title) + {\usebeamerfont{title}\textcolor{rougecrans}{\inserttitle}}; + +\node[below=2em] + at(title) (subtitle) + {\usebeamerfont{subtitle}\textcolor{rougecrans}{\insertsubtitle}}; + +\node + at ([yshift=-70pt]current page.center) (institute) + {\usebeamerfont{institute}\textcolor{rougecrans}{\insertdate}}; + +\node + at ([yshift=-50pt]current page.center) (author) + {\usebeamerfont{author}\textcolor{rougecrans}{\insertauthor}}; + +\node [opacity=.15] at (current page.center) {\includegraphics[height=0.9\textheight]{crans-logo} }; + +\end{tikzpicture} +} + + + +% +% -------------------------------------- +% Sidebar + +\useoutertheme[height=0pt,width=\swidth, hideothersubsections]{sidebar} + +\setbeamertemplate{sidebar left} +{ + {\vspace{0.9em} +\hspace{-0.4em} + \begin{minipage}{\swidth} + \centering + \insertlogo + \end{minipage} + \usebeamerfont{title in sidebar}% + \vskip1em% + \usebeamercolor[fg]{title in sidebar}% + \insertshorttitle[width=\swidth,center,respectlinebreaks]\par% + \vskip.5em% + }% + \insertverticalnavigation{\swidth}% + \vfill + \hbox to2cm{\hskip0.6cm\usebeamerfont{section in sidebar} \strut\usebeamercolor[fg]{section in sidebar}\insertframenumber/\inserttotalframenumber\hfill}% + \vskip3pt% +}% + + +% -------------------------------------------------------------------------- +% Section as frame title +\if@section +\addtobeamertemplate{frametitle}{ + \let\insertframetitle\insertsectionhead}{} +\addtobeamertemplate{frametitle}{ + \let\insertframesubtitle\insertsubsectionhead}{} + +\makeatletter + \CheckCommand*\beamer@checkframetitle{\@ifnextchar\bgroup\beamer@inlineframetitle{}} + \renewcommand*\beamer@checkframetitle{\global\let\beamer@frametitle\relax\@ifnextchar\bgroup\beamer@inlineframetitle{}} + + \fi + +\setbeamertemplate{caption}{\raggedright\insertcaption\par} +\setbeamertemplate{navigation symbols}[horizontal] + +% --------------------------------------------------- +% BLOC + +\setbeamertemplate{blocks}[rounded][shadow=false] +\setbeamercolor{block body}{fg=black,bg=rougecrans!20} +\setbeamercolor{block title}{fg=black,bg=rougecrans!40} + +\setbeamercolor{block body example}{fg=black,bg=gray!40} +\setbeamercolor{block title example}{fg=black,bg=gray} + +\setbeamercolor{block body alerted}{fg=black,bg=blue!40} +\setbeamercolor{block title alerted}{fg=black,bg=blue} + +\setbeamercolor{subitem}{fg=rougecrans!20} + +\makeatother +% LOGO : +\logo{\includegraphics[width=\swidth]{crans-logo.png}} diff --git a/slides/crans-logo.png b/slides/crans-logo.png new file mode 100644 index 0000000..581c403 Binary files /dev/null and b/slides/crans-logo.png differ diff --git a/slides/seminaire-ci.tex b/slides/seminaire-ci.tex new file mode 100644 index 0000000..ec03f8e --- /dev/null +++ b/slides/seminaire-ci.tex @@ -0,0 +1,68 @@ +\documentclass[handout,aspectratio=169]{beamer} + +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage{lmodern} +\usepackage[francais]{babel} +\usepackage{graphicx} + +\usetheme[sectiontitle]{crans} + +\title{Automatisez vos tâches avec une intégration continue} +\subtitle{Séminaire CRANS} +\author[]{\textsc{Yohann D'ANELLO}} +\date{11 février 2021} + + +\begin{document} +\begin{frame} + \maketitle +\end{frame} + +\begin{frame} + \tableofcontents[subsubsectionstyle=hide] +\end{frame} + +\section{Example} + +\subsection{Block} + +\begin{frame} + \begin{block}{Title block} + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. + \end{block} + \begin{block}{} + No title Block \\ + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. + \end{block} + \begin{exampleblock}{Example Block} + Example text (ugly) + \end{exampleblock} + \begin{alertblock}{Alert Block} + Alert Text + \end{alertblock} +\end{frame} + +\subsection{Lists} + +\begin{frame} + \begin{itemize} + \item Item 1 + \item Item 2 + \begin{itemize} + \item Subitem 1 + \item Subitem 2 + \end{itemize} + \end{itemize} + \begin{enumerate} + \item item 1 + \begin{enumerate} + \item item 1.1 + \end{enumerate} + \item + \item + \item + \end{enumerate} + +\end{frame} +\end{document}