def is_user_activated(jbuser): reg_allowed = JBoxDynConfig.get_allow_registration( Compute.get_install_id()) if jbuser.is_new: if not reg_allowed: activation_state = JBoxUserV2.ACTIVATION_REQUESTED else: activation_state = JBoxUserV2.ACTIVATION_GRANTED jbuser.set_activation_state(JBoxUserV2.ACTIVATION_CODE_AUTO, activation_state) jbuser.save() else: activation_code, activation_state = jbuser.get_activation_state() if reg_allowed and (activation_state != JBoxUserV2.ACTIVATION_GRANTED): activation_state = JBoxUserV2.ACTIVATION_GRANTED jbuser.set_activation_state(JBoxUserV2.ACTIVATION_CODE_AUTO, activation_state) jbuser.save() elif activation_state != JBoxUserV2.ACTIVATION_GRANTED: if not ((activation_state == JBoxUserV2.ACTIVATION_REQUESTED) and (activation_code == JBoxUserV2.ACTIVATION_CODE_AUTO)): activation_state = JBoxUserV2.ACTIVATION_REQUESTED jbuser.set_activation_state( JBoxUserV2.ACTIVATION_CODE_AUTO, activation_state) jbuser.save() return activation_state == JBoxUserV2.ACTIVATION_GRANTED
def test(): sprops = JBoxSessionProps(TESTCLSTR, unique_sessname('*****@*****.**')) TestDBTables.log_debug("JBoxSessionProps. user_id: %s, snapshot_id: %s, message: %s", sprops.get_user_id(), sprops.get_snapshot_id(), sprops.get_message()) JBoxDynConfig.set_cluster_leader(TESTCLSTR, 'testinstance') assert JBoxDynConfig.get_cluster_leader(TESTCLSTR) == 'testinstance' JBoxDynConfig.unset_cluster_leader(TESTCLSTR) assert JBoxDynConfig.get_cluster_leader(TESTCLSTR) is None assert JBoxDynConfig.get_allow_registration(TESTCLSTR) JBoxDynConfig.set_allow_registration(TESTCLSTR, False) assert not JBoxDynConfig.get_allow_registration(TESTCLSTR) JBoxDynConfig.set_allow_registration(TESTCLSTR, True) assert JBoxDynConfig.get_allow_registration(TESTCLSTR) assert JBoxDynConfig.get_registration_hourly_rate(TESTCLSTR) == 60 JBoxDynConfig.set_registration_hourly_rate(TESTCLSTR, 20) assert JBoxDynConfig.get_registration_hourly_rate(TESTCLSTR) == 20 JBoxDynConfig.set_registration_hourly_rate(TESTCLSTR, 60) assert JBoxDynConfig.get_registration_hourly_rate(TESTCLSTR) == 60 assert JBoxDynConfig.get_message(TESTCLSTR) is None JBoxDynConfig.set_message(TESTCLSTR, "hello world", datetime.timedelta(minutes=1)) assert JBoxDynConfig.get_message(TESTCLSTR) == "hello world" JBoxDynConfig.set_user_home_image(TESTCLSTR, "juliabox-user-home-templates", "user_home_28Nov2014.tar.gz") assert JBoxDynConfig.get_user_home_image(TESTCLSTR) == ("juliabox-user-home-templates", "user_home_28Nov2014.tar.gz") num_pending_activations = JBoxUserV2.count_pending_activations() TestDBTables.log_debug("pending activations: %d", num_pending_activations) count_created = JBoxUserV2.count_created(48) TestDBTables.log_debug("accounts created in last 1 hour: %d", count_created)
def is_user_activated(jbuser): reg_allowed = JBoxDynConfig.get_allow_registration(Compute.get_install_id()) if jbuser.is_new: if not reg_allowed: activation_state = JBoxUserV2.ACTIVATION_REQUESTED else: activation_state = JBoxUserV2.ACTIVATION_GRANTED jbuser.set_activation_state(JBoxUserV2.ACTIVATION_CODE_AUTO, activation_state) jbuser.save() else: activation_code, activation_state = jbuser.get_activation_state() if reg_allowed and (activation_state != JBoxUserV2.ACTIVATION_GRANTED): activation_state = JBoxUserV2.ACTIVATION_GRANTED jbuser.set_activation_state(JBoxUserV2.ACTIVATION_CODE_AUTO, activation_state) jbuser.save() elif activation_state != JBoxUserV2.ACTIVATION_GRANTED: if not ((activation_state == JBoxUserV2.ACTIVATION_REQUESTED) and (activation_code == JBoxUserV2.ACTIVATION_CODE_AUTO)): activation_state = JBoxUserV2.ACTIVATION_REQUESTED jbuser.set_activation_state(JBoxUserV2.ACTIVATION_CODE_AUTO, activation_state) jbuser.save() return activation_state == JBoxUserV2.ACTIVATION_GRANTED