53 lines
2.1 KiB
Docker
53 lines
2.1 KiB
Docker
|
FROM ubuntu:24.04
|
||
|
|
||
|
RUN apt-get update -y && apt-get install -y sudo
|
||
|
RUN sudo apt-get install -y ruby ruby-dev
|
||
|
RUN sudo apt-get install -y tcpdump tshark
|
||
|
RUN sudo apt-get install -y shellcheck teeworlds-server teeworlds teeworlds-data
|
||
|
RUN sudo apt install -y build-essential glslang-tools libavcodec-extra libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libcurl4-openssl-dev libfreetype6-dev libglew-dev libnotify-dev libogg-dev libopus-dev libopusfile-dev libpng-dev libsdl2-dev libsqlite3-dev libssl-dev libvulkan-dev libwavpack-dev libx264-dev
|
||
|
RUN sudo apt-get install -y wget
|
||
|
|
||
|
RUN wget https://github.com/ChillerDragon/teeworlds/releases/download/v0.7.5-headless/teeworlds-0.7.5-linux_x86_64.tar.gz
|
||
|
RUN tar -xvzf teeworlds-0.7.5-linux_x86_64.tar.gz
|
||
|
RUN sudo mkdir -p /usr/local/bin/
|
||
|
RUN sudo mv teeworlds-0.7.5-linux_x86_64/teeworlds /usr/local/bin/teeworlds-headless
|
||
|
RUN rm -rf teeworlds-0.7.5-linux_x86_64*
|
||
|
|
||
|
RUN wget https://github.com/ChillerDragon/ddnet/releases/download/v16.5-headless/DDNet-headless.zip
|
||
|
RUN unzip DDNet-headless.zip
|
||
|
RUN sudo mv DDNet-headless /usr/local/bin
|
||
|
RUN rm DDNet-headless.zip
|
||
|
|
||
|
RUN wget https://github.com/ChillerDragon/ddnet/releases/download/v17.4.2-headless-0.7/DDNet7-headless-ubuntu24.zip
|
||
|
RUN unzip DDNet7-headless-ubuntu24.zip
|
||
|
RUN chmod +x DDNet7-headless
|
||
|
RUN sudo mv DDNet7-headless /usr/local/bin
|
||
|
RUN rm DDNet7-headless-ubuntu24.zip
|
||
|
|
||
|
RUN echo 'TODO: remove this ugly hack!'
|
||
|
RUN mkdir -p ~/.teeworlds/downloadedmaps
|
||
|
RUN cd ~/.teeworlds/downloadedmaps && wget https://heinrich5991.de/teeworlds/maps/maps/dm1_64548818.map
|
||
|
|
||
|
RUN gem install bundler
|
||
|
RUN gem install rubocop:1.31.2
|
||
|
|
||
|
USER 1000
|
||
|
|
||
|
WORKDIR /teeworlds_network
|
||
|
COPY . .
|
||
|
|
||
|
RUN bundle install --jobs 4 --retry 3
|
||
|
|
||
|
|
||
|
RUN echo '[CLIENT] Test sending chat messages'
|
||
|
RUN ./integration_test/run.sh client/chat.rb
|
||
|
RUN echo '[CLIENT] Test reconnect'
|
||
|
RUN ./integration_test/run.sh client/reconnect.rb
|
||
|
RUN echo '[CLIENT] Test rcon'
|
||
|
RUN ./integration_test/run.sh client/rcon.rb
|
||
|
RUN echo '[SERVER] Test connect'
|
||
|
RUN ./integration_test/run.sh server/connect.rb
|
||
|
RUN echo '[SERVER] Test chat'
|
||
|
RUN ./integration_test/run.sh server/chat.rb
|
||
|
|