From 0c0d538677e8c13dfca4b9270e8b9431952d7196 Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 10:53:49 +0100 Subject: [PATCH 01/15] Added a demo gitea workflow --- .gitea/workflows/demo.yaml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .gitea/workflows/demo.yaml diff --git a/.gitea/workflows/demo.yaml b/.gitea/workflows/demo.yaml new file mode 100644 index 0000000..0f582f8 --- /dev/null +++ b/.gitea/workflows/demo.yaml @@ -0,0 +1,19 @@ +name: Gitea Actions Demo +run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 +on: [push] + +jobs: + Explore-Gitea-Actions: + runs-on: linux_amd64 + steps: + - run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event." + - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" + - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." + - name: Check out repository code + uses: actions/checkout@v3 + - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." + - run: echo "🖥️ The workflow is now ready to test your code on the runner." + - name: List files in the repository + run: | + ls ${{ gitea.workspace }} + - run: echo "🍏 This job's status is ${{ job.status }}." From 0502b3c2edb2442e04f097828c59b0e2841e47da Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 11:16:33 +0100 Subject: [PATCH 02/15] Play with gitea workflows --- .gitea/workflows/demo.yaml | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/.gitea/workflows/demo.yaml b/.gitea/workflows/demo.yaml index 0f582f8..a387e38 100644 --- a/.gitea/workflows/demo.yaml +++ b/.gitea/workflows/demo.yaml @@ -1,19 +1,10 @@ -name: Gitea Actions Demo -run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 +name: Gitea Test on: [push] jobs: Explore-Gitea-Actions: runs-on: linux_amd64 steps: - - run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event." - - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" - - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." - - name: Check out repository code - uses: actions/checkout@v3 - - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." - - run: echo "🖥️ The workflow is now ready to test your code on the runner." - - name: List files in the repository - run: | - ls ${{ gitea.workspace }} - - run: echo "🍏 This job's status is ${{ job.status }}." + - run: echo "Echo ${{ gitea }}" + - run: echo "Echo ${{ runner }}" + - run: echo "Echo ${{ job }}" From 5d8d2e72d675eccbe4e4ca985230134dfc0e6f60 Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 11:25:43 +0100 Subject: [PATCH 03/15] More workflow experiments --- .gitea/workflows/demo.yaml | 10 ---------- .gitea/workflows/test.yml | 10 ++++++++++ 2 files changed, 10 insertions(+), 10 deletions(-) delete mode 100644 .gitea/workflows/demo.yaml create mode 100644 .gitea/workflows/test.yml diff --git a/.gitea/workflows/demo.yaml b/.gitea/workflows/demo.yaml deleted file mode 100644 index a387e38..0000000 --- a/.gitea/workflows/demo.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Gitea Test -on: [push] - -jobs: - Explore-Gitea-Actions: - runs-on: linux_amd64 - steps: - - run: echo "Echo ${{ gitea }}" - - run: echo "Echo ${{ runner }}" - - run: echo "Echo ${{ job }}" diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml new file mode 100644 index 0000000..7049669 --- /dev/null +++ b/.gitea/workflows/test.yml @@ -0,0 +1,10 @@ +name: Run tests +on: [push] + +jobs: + run-tests: + runs-on: linux_amd64 + steps: + - run: echo "Echo ${{ gitea.repository }}" + - run: echo "Echo ${{ gitea.repositoryUrl }}" + - run: echo "Echo ${{ gitea.server_url }}" From 7543f00cad6490b1fdafb65820f492dc3848050e Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 11:28:10 +0100 Subject: [PATCH 04/15] workflow experiment --- .gitea/workflows/test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 7049669..f96fb56 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -5,6 +5,6 @@ jobs: run-tests: runs-on: linux_amd64 steps: - - run: echo "Echo ${{ gitea.repository }}" - - run: echo "Echo ${{ gitea.repositoryUrl }}" - - run: echo "Echo ${{ gitea.server_url }}" + - run: pwd + - run: ls + - run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" From cde59a9012ec48dd480ada9dc923f0499c3bfc9b Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 11:40:54 +0100 Subject: [PATCH 05/15] Workflow test --- .gitea/workflows/test.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index f96fb56..efe82b4 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -2,9 +2,11 @@ name: Run tests on: [push] jobs: - run-tests: + make-test: + name: Run make test runs-on: linux_amd64 steps: - run: pwd - - run: ls - run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" + - run: pwd + - run: ls From f8bd2f922d3fa7fa49cc927fc649d3a7510b5527 Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 11:48:34 +0100 Subject: [PATCH 06/15] Another test --- .gitea/workflows/test.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index efe82b4..7c16c9e 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,7 +6,11 @@ jobs: name: Run make test runs-on: linux_amd64 steps: - - run: pwd - - run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" - - run: pwd - - run: ls + - name: "Checkout the repository" + run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" + - name: "real Run make test" + working-directory: ./django-dav-events + run: pwd + - name: "ls" + working-directory: ./django-dav-events + run: ls From b01d3fe5aed25efaf4a91c1a9a0db5fb73dbdf5e Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 11:51:18 +0100 Subject: [PATCH 07/15] Will it work? --- .gitea/workflows/test.yml | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 7c16c9e..c46eca2 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -7,10 +7,7 @@ jobs: runs-on: linux_amd64 steps: - name: "Checkout the repository" - run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" - - name: "real Run make test" - working-directory: ./django-dav-events - run: pwd - - name: "ls" - working-directory: ./django-dav-events - run: ls + run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository + - name: "Run make test" + working-directory: ./repository + run: make test From 4e9da7789641d1806c59b467ac84911e2b56b8cd Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 16:00:50 +0100 Subject: [PATCH 08/15] Improved gitea test pipeline --- .gitea/workflows/{test.yml => test_on_push.yml} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename .gitea/workflows/{test.yml => test_on_push.yml} (90%) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test_on_push.yml similarity index 90% rename from .gitea/workflows/test.yml rename to .gitea/workflows/test_on_push.yml index c46eca2..d337f9f 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test_on_push.yml @@ -4,7 +4,7 @@ on: [push] jobs: make-test: name: Run make test - runs-on: linux_amd64 + runs-on: [django-dav-events] steps: - name: "Checkout the repository" run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository From fd14702e4f6628697b9414d3e8e0088baa5dbfe4 Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Thu, 14 Mar 2024 16:45:37 +0100 Subject: [PATCH 09/15] Tests are broken --- setup.py | 13 ++++++++----- tox.ini | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/setup.py b/setup.py index 1d76df9..dd31e5a 100644 --- a/setup.py +++ b/setup.py @@ -21,14 +21,16 @@ class SetupPythonEnvironment(MyCommand): def run(self): python_bin = sys.executable if sys.executable else 'python' - python_ver = sys.version_info.major - if python_ver == 3: - path = os.path.join('env', 'python3') + python_major_ver = sys.version_info.major + python_minor_ver = sys.version_info.minor + if python_major_ver == 3: + dirname = 'python%i.%i' % (python_major_ver, python_minor_ver) + path = os.path.join('env', dirname) symlink_path = os.path.join('env', 'python') venv_module = 'venv' - prompt = 'py3-dav' + prompt = 'py%i.%i-dav' % (python_major_ver, python_minor_ver) else: - sys.stderr.write('Python %d is not supported.\n' % python_ver) + sys.stderr.write('Python %d is not supported.\n' % python_major_ver) sys.exit(posix.EX_USAGE) print('Creating new python environment in {path}'.format(path=path)) @@ -119,6 +121,7 @@ setup( 'django-datetime-widget2', 'pytz', 'selenium', + 'setuptools', 'coverage', ], extras_require={ diff --git a/tox.ini b/tox.ini index bd6dda3..52eb553 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py311 +envlist = py312 [testenv] recreate = false From 6242efd7484078dbb7e43a234bcd75f0c664efd8 Mon Sep 17 00:00:00 2001 From: heinzel Date: Fri, 15 Mar 2024 11:59:27 +0100 Subject: [PATCH 10/15] Run tests under python 3.11 and 3.12 --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 52eb553..a04e348 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py312 +envlist = py311, py312 [testenv] recreate = false From 4da2430ed1c9f2e6294df087edf3471f0e2ccf29 Mon Sep 17 00:00:00 2001 From: heinzel Date: Fri, 15 Mar 2024 11:59:59 +0100 Subject: [PATCH 11/15] Make tests work again --- dav_events/tests/test_converters.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dav_events/tests/test_converters.py b/dav_events/tests/test_converters.py index bd94c86..dd4588d 100644 --- a/dav_events/tests/test_converters.py +++ b/dav_events/tests/test_converters.py @@ -51,7 +51,7 @@ class Iso8601SerializerTestCase(TestCase): for value in invalid_values: emsg = ('Expected datetime.datetime, datetime.date or datetime.time,' ' not {}'.format(value.__class__.__name__)) - with self.assertRaisesRegexp(ValueError, emsg): + with self.assertRaisesRegex(ValueError, emsg): Iso8601Serializer.serialize(value) serialized = Iso8601Serializer.serialize(value, ignore_unsupported_input=True) self.assertEqual(serialized, value) From 2cad3d8f97aa9d78ce4bcd8b0185ede2539ea83b Mon Sep 17 00:00:00 2001 From: heinzel Date: Fri, 15 Mar 2024 16:54:48 +0100 Subject: [PATCH 12/15] Add a nightly test workflow --- .gitea/workflows/nightly_test.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .gitea/workflows/nightly_test.yml diff --git a/.gitea/workflows/nightly_test.yml b/.gitea/workflows/nightly_test.yml new file mode 100644 index 0000000..6cfe39d --- /dev/null +++ b/.gitea/workflows/nightly_test.yml @@ -0,0 +1,15 @@ +name: Run tests every night +on: + schedule: + - cron: "05 17 * * *" + +jobs: + make-test: + name: Run make test + runs-on: [django-dav-events] + steps: + - name: "Checkout the repository" + run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository + - name: "Run make test" + working-directory: ./repository + run: make test From b49cdc4e0ea95dacbe51a6bb2a24b7803d9c6222 Mon Sep 17 00:00:00 2001 From: heinzel Date: Fri, 15 Mar 2024 17:21:06 +0100 Subject: [PATCH 13/15] Added more gitea Actions --- .gitea/workflows/deploy_stage.yml | 15 +++++++++++++++ .gitea/workflows/nightly_test.yml | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 .gitea/workflows/deploy_stage.yml diff --git a/.gitea/workflows/deploy_stage.yml b/.gitea/workflows/deploy_stage.yml new file mode 100644 index 0000000..6b91e55 --- /dev/null +++ b/.gitea/workflows/deploy_stage.yml @@ -0,0 +1,15 @@ +name: Deploy into stage environment +on: workflow_dispatch + +jobs: + make-deploy: + name: Deploy into stage environment + runs-on: [django-dav-events, kitty] + steps: + - name: "Checkout the repository" + run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository + - name: "Run make deploy" + working-directory: ./repository + env: + DEPLOY_DIR: "/var/www/touren.alpenverein-karlsruhe.de/wsgi/django-dav-events.stage" + run: make deploy diff --git a/.gitea/workflows/nightly_test.yml b/.gitea/workflows/nightly_test.yml index 6cfe39d..a4b5fc0 100644 --- a/.gitea/workflows/nightly_test.yml +++ b/.gitea/workflows/nightly_test.yml @@ -1,7 +1,7 @@ -name: Run tests every night +name: Run tests every night at 05:05 on: schedule: - - cron: "05 17 * * *" + - cron: "05 05 * * *" jobs: make-test: From 9c43cc6d69561cdacac1a727d8591d44da4f5097 Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Fri, 12 Jul 2024 11:02:39 +0200 Subject: [PATCH 14/15] Trigger deploy stage workflow on push to stage branch --- .gitea/workflows/deploy_stage.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/deploy_stage.yml b/.gitea/workflows/deploy_stage.yml index 6b91e55..c780d97 100644 --- a/.gitea/workflows/deploy_stage.yml +++ b/.gitea/workflows/deploy_stage.yml @@ -1,13 +1,17 @@ name: Deploy into stage environment -on: workflow_dispatch +on: + push: + branches: + - stage + workflow_dispatch: jobs: make-deploy: name: Deploy into stage environment runs-on: [django-dav-events, kitty] steps: - - name: "Checkout the repository" - run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository + - name: "Checkout stage branch of the repository" + run: git clone -b stage "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository - name: "Run make deploy" working-directory: ./repository env: From 4e525b2d68f38a9df259e2e7276513bc478cbfbc Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Fri, 2 Aug 2024 13:14:58 +0200 Subject: [PATCH 15/15] gitea workflow: start switching from using Makefile to direkt commands --- .gitea/workflows/nightly_test.yml | 8 ++++---- .gitea/workflows/test_on_push.yml | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/nightly_test.yml b/.gitea/workflows/nightly_test.yml index a4b5fc0..25a90b9 100644 --- a/.gitea/workflows/nightly_test.yml +++ b/.gitea/workflows/nightly_test.yml @@ -4,12 +4,12 @@ on: - cron: "05 05 * * *" jobs: - make-test: - name: Run make test + run-tests: + name: Execute tox to run the test suite runs-on: [django-dav-events] steps: - name: "Checkout the repository" run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository - - name: "Run make test" + - name: "Run test via tox" working-directory: ./repository - run: make test + run: tox diff --git a/.gitea/workflows/test_on_push.yml b/.gitea/workflows/test_on_push.yml index d337f9f..38d3ada 100644 --- a/.gitea/workflows/test_on_push.yml +++ b/.gitea/workflows/test_on_push.yml @@ -2,12 +2,12 @@ name: Run tests on: [push] jobs: - make-test: - name: Run make test + run-tests: + name: Execute tox to run the test suite runs-on: [django-dav-events] steps: - name: "Checkout the repository" run: git clone "${{ gitea.server_url }}/${{ gitea.repository }}" ./repository - - name: "Run make test" + - name: "Run tests via tox" working-directory: ./repository - run: make test + run: tox