Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Signed-off-by: Kiril Isakov <[email protected]>
  • Loading branch information
kirisakow committed May 23, 2024
0 parents commit 1a3a870
Show file tree
Hide file tree
Showing 946 changed files with 131,981 additions and 0 deletions.
29 changes: 29 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"image": "ghcr.io/juliushaertl/nextcloud-dev-php80:latest",
"forwardPorts": [80],
"containerEnv": {
"NEXTCLOUD_AUTOINSTALL_APPS": "tables",
"XDEBUG_MODE": "debug"
},
"customizations": {
"vscode": {
"extensions": [
"felixfbecker.php-intellisense",
"octref.vetur"
],
"settings": {
"php.suggest.basic": false,
"git.alwaysSignOff": true
}
}
},
"workspaceMount": "source=${localWorkspaceFolder},target=/var/www/html/apps-extra/tables,type=bind",
"workspaceFolder": "/var/www/html/apps-extra/tables",
"overrideCommand": true,
"postAttachCommand": "bash ./.devcontainer/setup.sh",
"portsAttributes": {
"80": {
"label": "Webserver"
}
}
}
9 changes: 9 additions & 0 deletions .devcontainer/setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash

(
cd /tmp && /usr/local/bin/bootstrap.sh apache2ctl start
)

composer install --no-dev
npm ci
npm run dev
12 changes: 12 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
module.exports = {
root: true,
extends: [
'@nextcloud',
],
rules: {
'jsdoc/require-jsdoc': 'off',
'jsdoc/tag-lines': 'off',
'vue/first-attribute-linebreak': 'off',
'vue/max-attributes-per-line': 'off'
}
}
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/js/* binary
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/appinfo/info.xml @enjeck @blizzz @juliushaertl
99 changes: 99 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
name: Bug
description: Have you encountered a bug? Submit a report and help us improve Nextcloud Tables.
labels: ["bug", "0. Needs triage"]
body:
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce
description: |
Describe the steps to reproduce the bug.
The better your description is _(go 'here', click 'there'...)_ the fastest you'll get an _(accurate)_ answer.
value: |
1.
2.
3.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: Expected behavior
description: Tell us what should happen
validations:
required: true
- type: textarea
id: actual-behavior
attributes:
label: Actual behavior
description: Tell us what happens instead
validations:
required: true
- type: input
id: tables-app-version
attributes:
label: Tables app version
description: See apps admin page, e.g. 0.5.3
- type: input
id: browser
attributes:
label: Browser
description: e.g Firefox 56
- type: input
id: client-os
attributes:
label: Client operating system
description: e.g. Windows
- type: markdown
attributes:
value: "## Server configuration"
- type: input
id: server-os
attributes:
label: Operating system
description: |
Write down the operating system where Nextcloud Tables app is installed.
- type: dropdown
id: webserver
attributes:
label: Web server
description: |
Select web server serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "Apache"
- "Nginx"
- "Other"
- type: dropdown
id: php
attributes:
label: PHP engine version
description: |
Select PHP engine version serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "PHP 7.4"
- "PHP 8.0"
- "PHP 8.1"
- "PHP 8.2"
- "PHP 8.3"
- "Other"
- type: dropdown
id: database
attributes:
label: Database
description: |
Select Database engine serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "MySQL"
- "MariaDB"
- "PostgreSQL"
- "SQLite"
- "Oracle"
- "Other"
- type: textarea
id: additional-info
attributes:
label: Additional info
description: Any additional information related to the issue (ex. browser console errors, software versions).
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Feature request
description: You have a neat idea that should be implemented?
labels: ["enhancement", "0. Needs triage"]
body:
- type: textarea
id: description-problem
attributes:
label: Is your feature request related to a problem? Please describe.
description: |
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
- type: textarea
id: description-solution
attributes:
label: Describe the solution you'd like
description: |
A clear and concise description of what you want to happen.
- type: textarea
id: description-alternatives
attributes:
label: Describe alternatives you've considered
description: |
A clear and concise description of any alternative solutions or features you've considered.
- type: textarea
id: additional-context
attributes:
label: Additional context
description: |
Add any other context or screenshots about the feature request here.
150 changes: 150 additions & 0 deletions .github/workflows/app-upgrade-mysql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
name: app upgrade mysql

on:
pull_request:
branches: main

permissions:
contents: read

concurrency:
group: app-upgrade-mysql-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
changes:
runs-on: ubuntu-latest

outputs:
src: ${{ steps.changes.outputs.src}}

steps:
- uses: dorny/paths-filter@4512585405083f25c027a35db413c2b3b9006d50 # v2.11.1
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- 'appinfo/**'
- 'lib/**'
- 'templates/**'
- 'tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
app-upgrade-mysql:
runs-on: ubuntu-latest

needs: changes
if: needs.changes.outputs.src != 'false'

strategy:
matrix:
php-versions: ['8.2']
server-versions: ['master']

services:
mysql:
image: ghcr.io/nextcloud/continuous-integration-mysql-8.0:latest
ports:
- 4444:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5

steps:
- name: Set app env
run: |
# Split and keep last
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
- name: Checkout server
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: true
repository: nextcloud/server
ref: ${{ matrix.server-versions }}

- name: Register text Git reference
run: |
text_app_ref="$(if [ "${{ matrix.server-versions }}" = "master" ]; then echo -n "main"; else echo -n "${{ matrix.server-versions }}"; fi)"
echo "text_app_ref=$text_app_ref" >> $GITHUB_ENV
- name: Checkout text app
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
repository: nextcloud/text
path: apps/text
ref: ${{ env.text_app_ref }}

- name: Checkout viewer app
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
repository: nextcloud/viewer
path: apps/viewer
ref: ${{ matrix.server-versions }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@e6f75134d35752277f093989e72e140eaa222f35 # v2
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql, sqlite, pdo_sqlite
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Enable ONLY_FULL_GROUP_BY MySQL option
run: |
echo "SET GLOBAL sql_mode=(SELECT CONCAT(@@sql_mode,',ONLY_FULL_GROUP_BY'));" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
echo "SELECT @@sql_mode;" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
- name: Set up Nextcloud, enable tables from app store
env:
DB_PORT: 4444
run: |
mkdir data
./occ maintenance:install --verbose --database=mysql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
./occ app:enable --force ${{ env.APP_NAME }}
- name: Checkout app
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
path: apps/${{ env.APP_NAME }}

- name: Set up dependencies
working-directory: apps/${{ env.APP_NAME }}
run: composer i --no-dev

- name: Upgrade Nextcloud and see whether the app still works
run: |
./occ upgrade
./occ app:list
- name: Upload nextcloud logs
uses: actions/upload-artifact@v4
if: always()
with:
name: nextcloud.log
path: data/nextcloud.log
retention-days: 5


summary:
permissions:
contents: none
runs-on: ubuntu-latest
needs: [changes, app-upgrade-mysql]

if: always()

name: app-upgrade-mysql-summary

steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.app-upgrade-mysql.result != 'success' }}; then exit 1; fi
Loading

0 comments on commit 1a3a870

Please sign in to comment.