diff --git a/.github/workflows/tests-deploy.yml b/.github/workflows/tests-deploy.yml index f518377d..43c5eecf 100644 --- a/.github/workflows/tests-deploy.yml +++ b/.github/workflows/tests-deploy.yml @@ -91,11 +91,13 @@ jobs: run: | php -S 127.0.0.1:8080 & ./occ app_ecosystem_v2:daemon:register docker_local_sock Docker docker-install unix-socket /var/run/docker.sock http://127.0.0.1:8080/index.php - /occ app_ecosystem_v2:app:deploy app_python_skeleton docker_local_sock \ + ./occ app_ecosystem_v2:app:deploy app_python_skeleton docker_local_sock \ --info-xml https://raw.githubusercontent.com/cloud-py-api/py_app_v2-skeleton/main/appinfo/info.xml ./occ app_ecosystem_v2:app:register app_python_skeleton docker_local_sock ./occ app_ecosystem_v2:app:enable app_python_skeleton ./occ app_ecosystem_v2:app:disable app_python_skeleton + ./occ app_ecosystem_v2:app:unregister app_python_skeleton --silent + ./occ app_ecosystem_v2:daemon:unregister docker_local_sock - name: Check logs run: | @@ -164,6 +166,8 @@ jobs: docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:register app_python_skeleton docker_local_sock docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:enable app_python_skeleton docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:disable app_python_skeleton + docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:unregister app_python_skeleton --silent + docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:daemon:unregister docker_local_sock - name: Copy NC log to host run: docker cp nextcloud:/var/www/html/data/nextcloud.log nextcloud.log @@ -240,6 +244,8 @@ jobs: docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:register app_python_skeleton docker_by_port docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:enable app_python_skeleton docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:disable app_python_skeleton + docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:app:unregister app_python_skeleton --silent + docker exec nextcloud sudo -u www-data php occ app_ecosystem_v2:daemon:unregister docker_by_port - name: Copy NC log to host run: docker cp nextcloud:/var/www/html/data/nextcloud.log nextcloud.log diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e89a99a1..5c0fb2a0 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -116,9 +116,9 @@ jobs: echo $! > /tmp/_install.pid cd .. sleep 5s - php occ app_ecosystem_v2:daemon:register simulate_docker Docker docker-install unix-socket 0 0 - php occ app_ecosystem_v2:app:register \ - "{\"appid\":\"$APP_ID\",\"name\":\"$APP_ID\",\"daemon_config_name\":\"simulate_docker\",\"version\":\"$APP_VERSION\",\"secret\":\"$APP_SECRET\",\"host\":\"localhost\",\"port\":$APP_PORT,\"system_app\":1}" \ + php occ app_ecosystem_v2:daemon:register manual_install "Manual Install" manual-install 0 0 0 + php occ app_ecosystem_v2:app:register nc_py_api manual_install --json-info \ + "{\"appid\":\"$APP_ID\",\"name\":\"$APP_ID\",\"daemon_config_name\":\"simulate_docker\",\"version\":\"$APP_VERSION\",\"secret\":\"$APP_SECRET\",\"host\":\"localhost\",\"port\":$APP_PORT,\"protocol\":\"http\",\"system_app\":1}" \ -e --force-scopes kill -15 $(cat /tmp/_install.pid) timeout 3m tail --pid=$(cat /tmp/_install.pid) -f /dev/null diff --git a/lib/Command/ExApp/Register.php b/lib/Command/ExApp/Register.php index 08d56ea6..7cf1a36f 100644 --- a/lib/Command/ExApp/Register.php +++ b/lib/Command/ExApp/Register.php @@ -82,7 +82,7 @@ protected function configure() { $this->addOption('enabled', 'e', InputOption::VALUE_NONE, 'Enable ExApp after registration'); $this->addOption('force-scopes', null, InputOption::VALUE_NONE, 'Force scopes approval'); - $this->addOption('json-info', null, InputOption::VALUE_REQUIRED, 'ExApp JSON deploy info (url or absolute local path)'); + $this->addOption('json-info', null, InputOption::VALUE_REQUIRED, 'ExApp JSON deploy info'); } protected function execute(InputInterface $input, OutputInterface $output): int { @@ -111,7 +111,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int } $exAppInfo = $this->manualActions->loadExAppInfo($appId, $daemonConfig, [ - 'ex_app_json' => $exAppJson, + 'json-info' => $exAppJson, ]); } else { $output->writeln(sprintf('Daemon config %s actions for %s not found.', $daemonConfigName, $daemonConfig->getAcceptsDeployId())); diff --git a/lib/DeployActions/ManualActions.php b/lib/DeployActions/ManualActions.php index e1a7087e..54a45ac3 100644 --- a/lib/DeployActions/ManualActions.php +++ b/lib/DeployActions/ManualActions.php @@ -48,7 +48,7 @@ public function deployExApp(DaemonConfig $daemonConfig, array $params = []): mix } public function loadExAppInfo(string $appId, DaemonConfig $daemonConfig, array $params = []): array { - $jsonInfo = json_decode(file_get_contents($params['json-info']), true); + $jsonInfo = json_decode($params['json-info'], true); return [ 'appid' => $jsonInfo['appid'], 'version' => $jsonInfo['version'], @@ -61,7 +61,7 @@ public function loadExAppInfo(string $appId, DaemonConfig $daemonConfig, array $ } public function resolveDeployExAppHost(string $appId, DaemonConfig $daemonConfig, array $params = []): string { - $jsonInfo = json_decode(file_get_contents($params['json-info']), true); + $jsonInfo = json_decode($params['json-info'], true); return $jsonInfo['host']; } }