Skip to content

Instantly share code, notes, and snippets.

2018-03-14 14:29:44,352 http-nio-6002-exec-26 ERROR antoviaque 868x285286x24 6g5bys 89.130.210.167,127.0.0.1 /rest/projects/1.0/project/ADMIN/lastVisited [c.a.p.r.c.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: Failed operation: SetOperation[entityName=ApplicationUser,entityId=10000,propertyKey=last-visited-item.10901,newType=5,newMapper=TypeMapper[handler=StringPropertyHandler,valueEntity=OSPropertyString]]
com.opensymphony.module.propertyset.PropertyImplementationException: Failed operation: SetOperation[entityName=ApplicationUser,entityId=10000,propertyKey=last-visited-item.10901,newType=5,newMapper=TypeMapper[handler=StringPropertyHandler,valueEntity=OSPropertyString]]
at com.atlassian.jira.propertyset.CachingOfBizPropertyEntryStore.propEx(CachingOfBizPropertyEntryStore.java:332)
at com.atlassian.jira.propertyset.CachingOfBizPropertyEntryStore.retry(CachingOfBizPropertyEntryStore.java:318)
at com.atlassian.jira.propertyset.CachingOfBizPropertyEnt
root@discourse-opencraft:/var/discourse# ./launcher enter app
WARNING: Docker version 17.05.0-ce deprecated, recommend upgrade to 17.06.2 or newer.
root@discourse-opencraft-app:/var/www/discourse# cd /
root@discourse-opencraft-app:/# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial
root@discourse-opencraft-app:/# ps fauxwww
@antoviaque
antoviaque / readyforsprint_scriptfield.java
Created June 26, 2017 17:25
Jira - ScriptedField - Ready for Sprint
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.fields.CustomField
// Main //////////////////////////////////////////////////////////////////////////////
if(issue.issueType.name != "Story" && issue.issueType.name != "Bug") {
return null
}
@antoviaque
antoviaque / gist:443c8a507d52aaccf76b18a46258da56
Last active September 22, 2016 14:34
OpenCraft IM - Terminate VMs on instances linked to a closed/merged PR
# Ensure to disable auto-indent before pasting in ipython: %autoindent
# TODO: Disable monitoring
# TODO: Hide from UX (archive)
from pr_watch import github
for instance in OpenEdXInstance.objects.filter(watchedpullrequest__isnull=False):
pr = github.get_object_from_url('https://api.github.com/repos/{}/pulls/{}'.format(
instance.watchedpullrequest.target_fork_name,
instance.watchedpullrequest.github_pr_number
))
@antoviaque
antoviaque / gist:216046586b051c3ae1265b54f2d02f71
Last active September 22, 2016 05:41
OpenCraft IM - Automatically terminate old & failed VMs
# Ensure to disable auto-indent before pasting in ipython: %autoindent
from instance.models.appserver import Status
for instance in OpenEdXInstance.objects.all():
for appserver in instance.appserver_set.all():
if appserver.status == Status.ConfigurationFailed:
appserver.terminate_vm()
elif instance.active_appserver and appserver.created < instance.active_appserver.created:
appserver.terminate_vm()
@antoviaque
antoviaque / gist:0b6cc931290881de546319cf673186f6
Last active July 16, 2025 21:40
Open edX - SSO Doc - Draft

Third Party Authentication Features in Open edX: Technical Knowledge Transfer

Part 1: Background / Notes

  • Open edX has full, integrated support for three different types of third party auth provider:
    1. OAuth based providers (OAuth2 and the older OAuth v1). Google, Facebook, LinkedIn, and Azure Active Directory are available by default. Any other OAuth backends supported by python-social-auth v0.2.12 can be enabled by changing a configuration setting. Contributed by Google (John Cox).
    2. SAML / Shibboleth. SAML is an SSO standard mostly used by universities and corporations. Shibboleth is the name of a particular implementation of SAML, commonly used by higher ed. institutions.
    3. LTI. Users can use Learning Tools Interoperability® (LTI®) to authenticate. Support for this was contributed by UBC.
  • The Open edX platform also includes limited support for the following SSO providers.
  1. [
@antoviaque
antoviaque / gist:43a3a52fd9e5532615f341537bd40cdb
Last active July 1, 2016 12:25
Terminate all VMs of a given instance
def terminate_all_instance_vms(domain):
inst = OpenEdXInstance.objects.get(internal_lms_domain=domain)
for appserver in inst.appserver_set.all():
appserver.terminate_vm()
@antoviaque
antoviaque / gist:638836754a9819904a1d01e8e9d8344f
Created June 1, 2016 13:31
Terminate all VMs of all instances
def terminate_ALL_instance_vms():
for inst in OpenEdXInstance.objects.all():
for appserver in inst.appserver_set.all():
appserver.terminate_vm()
@antoviaque
antoviaque / gist:cac3a5fc7593134b777a1126fa32c976
Last active July 1, 2016 12:24
Terminate old VMs of an instance, keep the last one
def terminate_old_instance_vms(domain):
inst = OpenEdXInstance.objects.get(internal_lms_domain=domain)
for appserver in inst.appserver_set.all().order_by('-created')[1:]:
appserver.terminate_vm()
antoviaque@antoviaque-laptop:~/prog/opencraft$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'opencraft/xenial64' could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Loading metadata for box 'opencraft/xenial64'
default: URL: https://atlas.hashicorp.com/opencraft/xenial64
==> default: Adding box 'opencraft/xenial64' (v1.2) for provider: virtualbox
default: Downloading: https://atlas.hashicorp.com/opencraft/boxes/xenial64/versions/1.2/providers/virtualbox.box
==> default: Successfully added box 'opencraft/xenial64' (v1.2) for 'virtualbox'!