refactor: ♻️ refacto makefile and add docker

This commit is contained in:
Michel Roux 2024-11-19 20:32:48 +00:00
parent 4e0d69385f
commit f7ac88c96a
4 changed files with 73 additions and 10 deletions

23
.dockerignore Normal file
View File

@ -0,0 +1,23 @@
.DS_Store
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
.marginalia
js/
build/
coverage/
utils/docker-ci
vendor/
.php-cs-fixer.cache

21
Dockerfile Normal file
View File

@ -0,0 +1,21 @@
FROM nextcloud:30
ARG APP_NAME=radio
ENV NEXTCLOUD_UPDATE=1
ENV NEXTCLOUD_ADMIN_USER=$APP_NAME
ENV NEXTCLOUD_ADMIN_PASSWORD=$APP_NAME
ENV NEXTCLOUD_INIT_HTACCESS=1
ENV SQLITE_DATABASE=$APP_NAME
RUN apt-get update && \
apt-get install -y nodejs npm sqlite3 && \
rm -f /usr/local/etc/php/conf.d/opcache-recommended.ini && \
/entrypoint.sh true
USER www-data
COPY --chown=www-data:www-data . apps/$APP_NAME
RUN php occ app:enable $APP_NAME && \
php occ config:system:set debug --value=true
USER root

View File

@ -4,7 +4,7 @@
all: dev-setup lint build-js-production test
# Dev env management
dev-setup: clean clean-dev npm-init
dev-setup: clean clean-dev composer-init npm-init
npm-init:
npm ci
@ -12,6 +12,12 @@ npm-init:
npm-update:
npm update
composer-init:
composer install
composer-update:
composer update
# Building
build-js:
npm run dev
@ -52,16 +58,29 @@ clean:
clean-dev:
rm -rf node_modules
rm -rf vendor
release:
krankerl package
translations:
if [ ! -d "utils/docker-ci" ]; then \
git clone https://github.com/nextcloud/docker-ci.git utils/docker-ci; \
fi
php utils/docker-ci/translations/translationtool/translationtool.phar create-pot-files
php utils/docker-ci/translations/translationtool/translationtool.phar convert-po-files
docker run --rm \
-v $(PWD):/app \
--entrypoint php \
nextcloudci/translations \
/translationtool.phar create-pot-files
docker run --rm \
-v $(PWD):/app \
--entrypoint php \
nextcloudci/translations \
/translationtool.phar convert-po-files
dev: dev-setup
docker stop radio || true
docker rm radio || true
docker build -t radio .
docker run -itd --rm --name radio -v $(PWD):/var/www/html/apps/radio -p 80:80 radio
npm run watch
publish-appstore-nightly:
$(eval ASSET_URL = $(shell curl -s https://git.project-insanity.org/api/v4/projects/onny%2Fnextcloud-app-radio/releases | jq -r '.[0].assets.links[0].url'))

View File

@ -16,7 +16,7 @@ app uses radio-browser.info database as a backend.
- 👂 Smoth audio playback and transitions
</description>
<version>1.1.0</version>
<version>2.0.0</version>
<licence>agpl</licence>
<author mail="onny@project-insanity.org">Jonas Heinrich</author>
<namespace>Radio</namespace>
@ -25,8 +25,8 @@ app uses radio-browser.info database as a backend.
<bugs>https://git.project-insanity.org/onny/nextcloud-app-radio/issues</bugs>
<screenshot small-thumbnail="https://git.project-insanity.org/onny/nextcloud-app-radio/raw/master/screenshot-thumbnail.jpg">https://git.project-insanity.org/onny/nextcloud-app-radio/raw/master/screenshot.png</screenshot>
<dependencies>
<php min-version="7.4" max-version="8" />
<nextcloud min-version="20" max-version="21"/>
<php min-version="8.1" />
<nextcloud min-version="29" max-version="30"/>
</dependencies>
<navigations>
<navigation>