Code Monkey home page Code Monkey logo

tencentblueking / bk-itsm Goto Github PK

View Code? Open in Web Editor NEW
121.0 11.0 86.0 38.35 MB

ITSM-流程服务管理,通过可自定义设计的流程管理,同时关联蓝鲸智云的基础平台、公共组件,以满足IT服务的管理活动和场景需要。帮助用户规范内部管理流程,并提升管理效率。

License: MIT License

Makefile 0.02% Python 56.61% Shell 0.07% JavaScript 7.95% HTML 0.70% Vue 30.74% SCSS 0.93% CSS 2.45% TypeScript 0.51% Procfile 0.01%

bk-itsm's Introduction

蓝鲸流程服务

license Release codecov PRs Welcome

(English Documents Available)

流程服务(ITSM),是基于蓝鲸智云体系的上层SaaS应用。通过可自定义设计的流程模块,覆盖IT服务中的不同管理活动或应用场景。帮助企业用户规范内部管理流程,提升沟通及管理效率。

蓝鲸智云流程服务(ITSM),基于蓝鲸智云整体体系架构设计及开发。为用户提供可视化的流程配置服务,以满足用户的服务管理需求。同时,提供第三方对接能力,供用户可以调度蓝鲸体系中其它平台或服务能力的同时(配置平台,标准运维、ESB等),也能根据用户自身诉求实现与第三方服务的对接,降低沟通成本,提升流转效率。

流程服务后台使用 Python 作为开发语言,使用 Django 开发框架;前端使用 Vue 开发页面,通过前后端分离式的开发模式,在提供美观交互性强的界面的同时,提升整体的开发效率。

Overview

Feature

ITSM (IT 服务管理)是一套帮助企业对 IT 系统的规划、研发、实施和运营进行有效管理的方法论。ITSM 起源于 ITIL(IT Infrastructure Library,IT 基础架构标准库),ITIL 是 CCTA(英国国家电脑局)于 1980 年开发的一套 IT 服务管理标准库。ITSM 主要通过以流程为导向,从复杂的 IT 管理活动中梳理出核心流程,比如事件管理、问题管理和配置管理等,并将这些流程规范化、标准化,明确定义各个流程的目标和范围、成本和效益、运营步骤、关键成功因素和绩效指标、有关人员的责权利,以及各个流程之间的关系,致力于为企业提供高质量,低成本,高效率的 IT 服务,进而帮助企业提升自身的管理效率。

蓝鲸智云 ITSM 服务流程管理,是基于蓝鲸智云体系的上层 SaaS 应用。通过可自定义设计的流程模块,覆盖 IT 服务中的不同管理活动或应用场景。帮助企业用户规范内部管理流程,提升沟通及管理效率。

Getting started

Usage

Version plan

Support

BlueKing Community

  • BK-CMDB:蓝鲸配置平台(蓝鲸 CMDB)是一个面向资产及应用的企业级配置管理平台。
  • BK-CI:蓝鲸持续集成平台是一个开源的持续集成和持续交付系统,可以轻松将你的研发流程呈现到你面前。
  • BK-BCS:蓝鲸容器管理平台是以容器技术为基础,为微服务业务提供编排管理的基础服务平台。
  • BK-PaaS:蓝鲸 PaaS 平台是一个开放式的开发平台,让开发者可以方便快捷地创建、开发、部署和管理 SaaS 应用。
  • BK-SOPS:标准运维(SOPS)是通过可视化的图形界面进行任务流程编排和执行的系统,是蓝鲸体系中一款轻量级的调度编排类 SaaS 产品。

Contributing

如果你有好的意见或建议,欢迎给我们提 Issues 或 Pull Requests,为蓝鲸开源社区贡献力量。关于标准运维分支管理、Issue 以及 PR 规范, 请阅读 Contributing Guide

腾讯开源激励计划 鼓励开发者的参与和贡献,期待你的加入。

FAQ

FAQ

License

流程服务是基于 MIT 协议, 详细请参考 LICENSE

bk-itsm's People

Contributors

aa297236041 avatar benero avatar codejamz avatar hanshuaikang avatar luofann avatar zyxazhang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bk-itsm's Issues

如何本地部署bk-itsm

本地部署itsm的时候报错,执行
pip install -r requirements.dev.txt
环境是ubuntu 20.04 LTS
pip 21.2.4 from /home/node/Downloads/code/bk-itsm/py3venv/lib/python3.8/site-packages/pip (python 3.8)
Python 3.8.10
bk_itsm_error.log

本地部署dev环境,执行数据库操作报错

在工程目录下执行以下命令初始化数据库
python manage.py migrate
python manage.py createcachetable django_cache,报错如下

(bkitsm) [root@localhost bk-itsm]# python manage.py migrate
Traceback (most recent call last):
File "/opt/python/bkitsm/lib/python3.6/site-packages/MySQLdb/init.py", line 18, in
from . import _mysql
ImportError: libmysqlclient.so.20: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "manage.py", line 43, in
execute_from_command_line(sys.argv)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/core/management/init.py", line 419, in execute_from_command_line
utility.execute()
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/core/management/init.py", line 395, in execute
django.setup()
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/init.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/apps/registry.py", line 114, in populate
app_config.import_models()
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/apps/config.py", line 301, in import_models
self.models_module = import_module(models_module_name)
File "/opt/python/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 665, in _load_unlocked
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/contrib/auth/models.py", line 3, in
from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/contrib/auth/base_user.py", line 48, in
class AbstractBaseUser(models.Model):
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/models/base.py", line 122, in new
new_class.add_to_class('_meta', Options(meta, app_label))
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/models/base.py", line 326, in add_to_class
value.contribute_to_class(cls, name)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/models/options.py", line 207, in contribute_to_class
self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/utils/connection.py", line 15, in getattr
return getattr(self._connections[self._alias], item)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/utils/connection.py", line 62, in getitem
conn = self.create_connection(alias)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/utils.py", line 204, in create_connection
backend = load_backend(db['ENGINE'])
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/utils.py", line 111, in load_backend
return import_module('%s.base' % backend_name)
File "/opt/python/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 15, in
import MySQLdb as Database
File "/opt/python/bkitsm/lib/python3.6/site-packages/MySQLdb/init.py", line 24, in
version_info, _mysql.version_info, _mysql.file
NameError: name '_mysql' is not defined
(bkitsm) [root@localhost bk-itsm]# python manage.py createcachetable django_cache
Traceback (most recent call last):
File "/opt/python/bkitsm/lib/python3.6/site-packages/MySQLdb/init.py", line 18, in
from . import _mysql
ImportError: libmysqlclient.so.20: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "manage.py", line 43, in
execute_from_command_line(sys.argv)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/core/management/init.py", line 419, in execute_from_command_line
utility.execute()
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/core/management/init.py", line 395, in execute
django.setup()
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/init.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/apps/registry.py", line 114, in populate
app_config.import_models()
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/apps/config.py", line 301, in import_models
self.models_module = import_module(models_module_name)
File "/opt/python/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 665, in _load_unlocked
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/contrib/auth/models.py", line 3, in
from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/contrib/auth/base_user.py", line 48, in
class AbstractBaseUser(models.Model):
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/models/base.py", line 122, in new
new_class.add_to_class('_meta', Options(meta, app_label))
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/models/base.py", line 326, in add_to_class
value.contribute_to_class(cls, name)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/models/options.py", line 207, in contribute_to_class
self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/utils/connection.py", line 15, in getattr
return getattr(self._connections[self._alias], item)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/utils/connection.py", line 62, in getitem
conn = self.create_connection(alias)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/utils.py", line 204, in create_connection
backend = load_backend(db['ENGINE'])
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/utils.py", line 111, in load_backend
return import_module('%s.base' % backend_name)
File "/opt/python/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/opt/python/bkitsm/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 15, in
import MySQLdb as Database
File "/opt/python/bkitsm/lib/python3.6/site-packages/MySQLdb/init.py", line 24, in
version_info, _mysql.version_info, _mysql.file
NameError: name '_mysql' is not defined
(bkitsm) [root@localhost bk-itsm]#

jsonp返回数据报because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.

jsonp请求报错内容【浏览器 chrome】

because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.

API地址

/api/c/compapi/v2/usermanage/fs_list_users/?app_code=bk-magicbox&page=1&page_size=20&fuzzy_lookups=s&callback=USER_LIST_CALLBACK_0

后台返回内容【itsm-->gateway-->views.py-->函数:get_batch_users】

content-type: text/html; charset=utf-8

建议修改

修改前

res = adapter_api.get_batch_users(users, properties, is_exact, page_params)
        if callback_func_name:
            response = {
                "result": True,
                "message": "success",
                "data": {"results": res, "count": len(res)},
                "code": 0,
            }
            
            return HttpResponse(
                "{}({})".format(callback_func_name, json.dumps(response)),
                
            )

修改后

res = adapter_api.get_batch_users(users, properties, is_exact, page_params)
        if callback_func_name:
            response = {
                "result": True,
                "message": "success",
                "data": {"results": res, "count": len(res)},
                "code": 0,
            }
            
            return HttpResponse(
                "{}({})".format(callback_func_name, json.dumps(response)),
                content_type="application/javascript"
            )

NetworkUnreachableError: bk iam ping error

`[root@localhost bk-itsm-master]# python manage.py migrate
init redis settings
autodiscover rpc: rpc.components
autodiscover trigger: action.components
System check identified some issues:

WARNINGS:
ticket.SignTask.is_passed: (fields.W903) NullBooleanField is deprecated. Support for it (except in historical migrations) will be removed in Django 4.0.
HINT: Use BooleanField(null=True) instead.
workflow.Workflow.is_task_needed: (fields.W903) NullBooleanField is deprecated. Support for it (except in historical migrations) will be removed in Django 4.0.
HINT: Use BooleanField(null=True) instead.
workflow.WorkflowVersion.is_task_needed: (fields.W903) NullBooleanField is deprecated. Support for it (except in historical migrations) will be removed in Django 4.0.
HINT: Use BooleanField(null=True) instead.
Operations to perform:
Apply all migrations: account, admin, auth, auth_iam, component_framework, contenttypes, data_migration, django_celery_beat, django_celery_results, django_nyt, django_signal_valve, engine, iadmin, iam_migration, log, pipeline, postman, project, requests_tracker, role, service, sessions, sites, sla, sla_engine, task, thumbnail, ticket, ticket_status, trigger, variable_framework, weixin_core, workflow
Running migrations:
Applying iam_migration.0001_initial...http request error! method: %s, url: %s, data: %s GET localhost/ping None
Traceback (most recent call last):
File "manage.py", line 43, in
execute_from_command_line(sys.argv)
File "/usr/local/lib/python3.6/site-packages/django/core/management/init.py", line 419, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.6/site-packages/django/core/management/init.py", line 413, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 354, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 398, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 89, in wrapped
res = handle_func(*args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/django/core/management/commands/migrate.py", line 246, in handle
fake_initial=fake_initial,
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/executor.py", line 117, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/executor.py", line 227, in apply_migration
state = migration.apply(state, schema_editor)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/migration.py", line 123, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/operations/special.py", line 190, in database_forwards
self.code(from_state.apps, schema_editor)
File "/data/bk-itsm-master/iam/contrib/iam_migration/migrations/0001_initial.py", line 16, in forward_func
migrator.migrate()
File "/data/bk-itsm-master/iam/contrib/iam_migration/migrator.py", line 61, in migrate
raise exceptions.NetworkUnreachableError("bk iam ping error")
iam.contrib.iam_migration.exceptions.NetworkUnreachableError: bk iam ping error`

请问下这个是什么问题 如何解决

dev环境有没有详细的教程

按照官网给的开发环境搭建,一点也跑不起来。还有好多包都变名字了,能不能更新一下。dev环境的依赖能不能说清楚一点。都摸索3天了。还是摸索不出来。建议给个从0开始搭建环境的教程

基础组件版本问题

bk-itsm/docs/install/dev_deploy.md

准备本地 rabbitmq redis mysql

对于这些基础组件,有版本的要求么? 是指定版本还是我yum install安装即可。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.