48 lines
1.3 KiB
Docker
48 lines
1.3 KiB
Docker
FROM centos:7
|
|
|
|
RUN yum install -y \
|
|
vim \
|
|
rpm-build && \
|
|
rm -rf /var/cache/yum/*
|
|
|
|
RUN sed -i 's/include_release_info = 1/include_release_info = 0/' /usr/share/vim/vim74/ftplugin/spec.vim && \
|
|
echo 'let g:spec_chglog_format = "%a %b %d %Y ".$VENDOR." <".$EMAIL."> ".$VERSION."-".$REVISION' >> /etc/vimrc && \
|
|
echo 'autocmd VimEnter *.spec execute "normal \\c"' >> /etc/vimrc
|
|
|
|
ARG USER_ID
|
|
ARG CR_NAME
|
|
ARG CR_EMAIL
|
|
ARG PKG_NAME
|
|
ARG PKG_VERS
|
|
ARG PKG_REV
|
|
ARG PKG_ARCH
|
|
|
|
VOLUME /dist
|
|
VOLUME /build
|
|
WORKDIR /tmp/$PKG_NAME-$PKG_VERS
|
|
|
|
ENV VENDOR $CR_NAME
|
|
ENV EMAIL $CR_EMAIL
|
|
ENV NAME $PKG_NAME
|
|
ENV VERSION $PKG_VERS
|
|
ENV REVISION $PKG_REV
|
|
ENV ARCHITECTURE $PKG_ARCH
|
|
|
|
RUN useradd --non-unique --uid $USER_ID nvidia && chown nvidia: .
|
|
USER nvidia
|
|
|
|
CMD read -p "Update changelog (y/n)? " yn && [ "$yn" = "y" ] && \
|
|
vim /build/rpm/SPECS/$NAME.spec ; \
|
|
cp -Lr /build/rpm/* . && \
|
|
cp /dist/*.tar.xz SOURCES && \
|
|
rpmbuild --clean -bb \
|
|
-D "_topdir $PWD" \
|
|
-D "vendor $VENDOR" \
|
|
-D "email $EMAIL" \
|
|
-D "name $NAME" \
|
|
-D "version $VERSION" \
|
|
-D "revision $REVISION" \
|
|
-D "architecture $ARCHITECTURE" \
|
|
SPECS/$NAME.spec && \
|
|
mv RPMS/$ARCHITECTURE/*.rpm /dist
|