How to build and maintain custom api changes in tutor?

Earlier to Tutor i.e in native installation, we made hundreds of changes in .py files, adding api’s, css changes and maintained them with git.
Is there any way we could do the same with tutor for development and production servers?

@regis kindly suggest any solutions regarding this?

Same problem. Still i run native edx and change code for needs of my employer (and push them to git). Now i’d suppose to change rep when maple.2 gets ready:

tutor images build openedx --build-arg EDX_PLATFORM_REPOSITORY=https://mygitrepo/edx-platform.git --build-arg EDX_PLATFORM_VERSION=my-tag-or-branch --no-cache

So, one tutor for developing, second for production - on the same git repo.

1 Like

I was able to install it from fork of the edx-platform and a private repository also but in both of them it was having this error. Any ideas?


lms_1                        | 2022-02-21 04:41:36,632 ERROR 7 [root] [user 4] [ip 61.12.40.202] signals.py:22 - Uncaught exception from None
lms_1                        | Traceback (most recent call last):
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
lms_1                        |     return self.cursor.execute(sql, params)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/mysql/base.py", line 73, in execute
lms_1                        |     return self.cursor.execute(query, args)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 206, in execute
lms_1                        |     res = self._query(query)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 319, in _query
lms_1                        |     db.query(q)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/MySQLdb/connections.py", line 254, in query
lms_1                        |     _mysql.connection.query(self, query)
lms_1                        | MySQLdb._exceptions.OperationalError: (1054, "Unknown column 'enterprise_enterprisecustomeruser.invite_key_id' in 'field list'")
lms_1                        | 
lms_1                        | The above exception was the direct cause of the following exception:
lms_1                        | 
lms_1                        | Traceback (most recent call last):
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/core/handlers/exception.py", line 47, in inner
lms_1                        |     response = get_response(request)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/utils/deprecation.py", line 116, in __call__
lms_1                        |     response = self.process_request(request)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/enterprise/middleware.py", line 59, in process_request
lms_1                        |     enterprise_customer = get_enterprise_customer_for_user(current_user)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/enterprise/utils.py", line 766, in get_enterprise_customer_for_user
lms_1                        |     return EnterpriseCustomerUser.objects.get(user_id=auth_user.id).enterprise_customer
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/enterprise/models.py", line 779, in get
lms_1                        |     fetched_object = self.get_queryset().filter(**kwargs).first()
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/models/query.py", line 674, in first
lms_1                        |     for obj in (self if self.ordered else self.order_by('pk'))[:1]:
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/models/query.py", line 280, in __iter__
lms_1                        |     self._fetch_all()
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/models/query.py", line 1324, in _fetch_all
lms_1                        |     self._result_cache = list(self._iterable_class(self))
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/models/query.py", line 51, in __iter__
lms_1                        |     results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1175, in execute_sql
lms_1                        |     cursor.execute(sql, params)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 66, in execute
lms_1                        |     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
lms_1                        |     return executor(sql, params, many, context)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
lms_1                        |     return self.cursor.execute(sql, params)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/utils.py", line 90, in __exit__
lms_1                        |     raise dj_exc_value.with_traceback(traceback) from exc_value
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
lms_1                        |     return self.cursor.execute(sql, params)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/django/db/backends/mysql/base.py", line 73, in execute
lms_1                        |     return self.cursor.execute(query, args)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 206, in execute
lms_1                        |     res = self._query(query)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 319, in _query
lms_1                        |     db.query(q)
lms_1                        |   File "/openedx/venv/lib/python3.8/site-packages/MySQLdb/connections.py", line 254, in query
lms_1                        |     _mysql.connection.query(self, query)
lms_1                        | django.db.utils.OperationalError: (1054, "Unknown column 'enterprise_enterprisecustomeruser.invite_key_id' in 'field list'")

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.